October 22, 2026
For Kimi K3, choosing between B200 and B300 means choosing a node shape: the engine teams' public K3 guidance puts the smallest deployment on one 8-GPU B300 node, while B200 needs 16 GPUs across two nodes. GMI Cloud Prime Inference hosts it on single-tenant GPUs with a runtime tuned per model, lists Kimi K3 with 1M+ context among its one-click models, and puts GMI engineers on the setup with you. Sizing for K3 starts at B300.
Four answers separate a plan from a pitch, whether the candidate is a model vendor's API, a hyperscaler's managed model service, a GPU cloud with a tuning team, or your own cluster:
Renting bare GPUs, or self-hosting K3, leaves the engine, the parallel layout, and the acceptance testing with your team.
Kimi K3 is a 2.8T-parameter Mixture-of-Experts model that activates 16 of 896 experts, about 104B parameters, per token, according to Moonshot's model card. Only a small share of the model computes on any one token, but in the engine recipes below every expert's weights stay resident in GPU memory, so total parameters, not active parameters, set the footprint. The K3 weights are native MXFP4, and the Hugging Face repository totals roughly 1.56 TB.
Engine documentation turns that footprint into node counts:
| GPU | K3 deployment in engine documentation |
|---|---|
| B300 | 8 GPUs in one node (vLLM's stated minimum; SGLang 1x8 recipe) |
| B200 | 16 GPUs across two nodes (vLLM's stated minimum; SGLang 2x8 recipe) |
| H200 | 16 GPUs (SGLang 2x8 recipe) up to 32 GPUs (NVIDIA Dynamo recipe) |
Memory per GPU is the difference. On Prime Inference, B300 is the GPU with maximum memory per GPU, built for trillion-parameter models, for when B200 is not enough. vLLM's K3 launch post describes the single B300 node as a tight fit, so the context lengths and concurrency you need belong in the sizing request from the start. The engine configurations are the starting reference; GPU count per replica is a setting you choose with GMI engineers when you create the deployment.
Choose B300 when you want one replica to be one node. In SGLang's unified reference configuration, the model-parallel communication of a replica stays inside a single 8-GPU node. Prime bills by the GPU-hour, so GPUs per replica is one factor in spend: the reference B300 shape uses 8 GPUs where the reference B200 shape uses 16. Which option costs less per token also depends on each GPU's hourly rate, how many replicas you run, and the throughput each reaches on the same workload, so compare quotes on one workload definition.
Choose B200 when its pre-order slot is earlier or your fleet is already standardized on it. SGLang's unified K3 recipe for B200 splits the two nodes into two pipeline stages, so inter-node communication is part of every replica and the parallel layout becomes a central tuning decision. The speculative decoding options also follow the layout, as the tuning table below shows.
Weigh the maturity of the engine recipes. SGLang's K3 cookbook marks two B300 1x8 configurations (Low-Latency and Balanced) as verified, so a B300 plan starts from documented, speed-verified configurations. The accuracy threshold from your own evaluation set still gates every tuning change.
K3 is in GMI's model library and on the OpenAI-compatible API as moonshotai/Kimi-K3. That is the right place to start: serverless suits prototyping, low volume, and elastic traffic. The signals below say a dedicated replica is worth pricing.
| Signal | Why it matters for K3 | What to record on the API first |
|---|---|---|
| Sustained utilization | The Prime Inference page puts break-even with serverless near 35% sustained utilization, and above roughly 35% to 45% it shows serverless costing more than dedicated. That estimate is GMI's. Its stated conditions are open models at 8K input and 1K output, at FP4 precision (FP8 on H200). For K3, the break-even point follows from your traffic shape and replica size: a K3 replica spans many GPUs (the engine reference shapes above run 8 to 32), so measure utilization against the whole replica you would actually deploy. | Tokens per hour across a full week, with peaks |
| Output volume | Moonshot documents that K3 runs with thinking enabled on every request, so output tokens per request depend on how much reasoning your tasks trigger. | Input and output tokens per request type, from the usage field |
| Latency spread | Reserved GPUs stay warm with weights loaded, while serverless throughput and latency vary with platform load. | p95 and p99 latency by hour |
| Isolation and residency | Prime offers an isolated runtime, audit logs, zero-retention serving, region locking, and EU residency. | Which data classes may reach shared infrastructure |
| Throughput ceiling | Dedicated endpoints have no rate limits; the cap is the hardware you provision. | Peak requests per second you must absorb |
If none of these signals shows up in your numbers, stay on the API. If two or three do, the sizing conversation is worth having, and the usage log from the API becomes the traffic profile it starts from.
Prime Inference includes:
The public K3 engine documentation shows where the tuning decisions fall, and they differ between the two GPUs:
| Decision | B300 starting point in engine docs | B200 starting point in engine docs |
|---|---|---|
| Parallel layout (unified recipe) | Tensor parallel across 8 GPUs in one node | Two pipeline stages over 16 GPUs |
| Speculative decoding | DSPARK documented for K3 in vLLM and SGLang | DSPARK re-lays the 16 GPUs as a flat 16-way layout |
| Precision | K3 ships MXFP4 weights; Prime makes quantization configurable | Same |
These are agenda items for the tuning plan, drawn from vLLM and SGLang documentation. Tuned throughput depends on prompt lengths, concurrency, and reasoning effort, so the plan sets targets on your own traffic and measures each change against them. Several inputs come from you: the evaluation set and the accuracy threshold every tuning change must pass, the traffic forecast, and the region and compliance requirements.
Three steps can start while B200 and B300 are in pre-order:
When you move, the dedicated deployment exposes its endpoint URL once it reaches Running status, and requests go there with your API key.
Billing for K3 on Prime Inference is per GPU-hour, with no minimum contract to sign first. Reserved capacity, available seasonally or annually, carries lower per-hour rates for sustained production traffic. Qualified prospects receive free GPU-hour trial credits to validate performance against their own workload, and GMI prepares a tailored quote from your model and traffic profile. The uptime SLA depends on GPU series and deployment configuration, and committed SLAs are set by contract. Regions span Asia-Pacific, North America, and Europe, with specific regions accommodated case by case.
Adding up the per-GPU memory listed on the Prime Inference page, an 8-GPU B300 replica totals 2,304 GB (8 × 288 GB) and a 16-GPU B200 replica totals 3,072 GB (16 × 192 GB). How much of each pool serves K3's KDA state and MLA KV caches depends on the parallel layout, cache precision, and engine memory settings, which the tuning plan sets against the context lengths and concurrency targets in your sizing request. The single-node B300 replica keeps model-parallel communication inside one node.
A fine-tuned checkpoint with the same architecture and MXFP4 weight format, K3's native precision, keeps the 8-GPU B300 and 16-GPU B200 shapes above as the starting point for sizing. A checkpoint exported in 16-bit comes to about 5.6 TB (2.8T parameters at 2 bytes each); since Prime makes quantization configurable, the tuning plan sets the serving precision against your evaluation set and accuracy threshold. Weights load from Hugging Face, S3, or your own storage.
Bring your usage log, evaluation set, context lengths, concurrency target, and region requirements. GMI engineers will lay out B300 and B200 options for Kimi K3 on Prime Inference, including the H200 route. Book time with an engineer, or sign up and send K3 its first API requests.
Colin Mo
GMI Cloud helps you architect, deploy, optimize, and scale your AI strategies
