Devstral 2 123B GPU requirements: 62.5 GB at 4-bit, 250 GB at BF16
Devstral 2 123B needs 250 GB of GPU memory for its weights at BF16, 125 GB at FP8 and 62.5 GB at 4-bit, plus 11.8 GB of KV cache for a 32K context. The cheapest node that runs it here is 2× A40 at 4-bit, for $0.12 an hour on spot.
Weights plus a 32K 16-bit KV cache, with 10% of the node's memory kept free. Billed per minute.
- Parameters
- 123BDense
- Weights, 4-bit
- 62.5 GBBF16: 250 GB
- KV cache, 32K
- 11.8 GBOne sequence, 16-bit cache
- Context window
- 256KNative
How much VRAM Devstral 2 123B needs, format by format.
Weights are parameters × bytes per parameter. Each context column adds the KV cache of one sequence of that length.
| Format | Weights | + 8Kcontext | + 32Kcontext | + 128Kcontext | + 256Kcontext | Cheapest node, 32K |
|---|---|---|---|---|---|---|
| BF16Published weights, fine-tuning | 250 GB | 253 GB | 262 GB | 297 GB | 345 GB | 4× A100 PCIe 80GB · $0.36/h |
| FP8Hopper, Ada, Blackwell, MI300 | 125 GB | 128 GB | 137 GB | 172 GB | 220 GB | 4× L40 · $0.36/h |
| 4-bitAWQ, GPTQ, GGUF Q4 | 62.5 GB | 65.5 GB | 74.3 GB | 110 GB | 157 GB | 2× A40 · $0.12/h |
The serving engine adds its own buffers, and an 8-bit KV cache halves the context columns. We keep 10% of a node's memory free when we say a model fits. Speed is a separate question: it follows memory bandwidth and, for a mixture of experts, the active parameters.
GPUs that run Devstral 2 123B, cheapest first.
For each format, the smallest node of each GPU model that holds the weights and a 32K context, sorted by spot price. One row per GPU model; larger nodes of the same GPU work too.
| Format | GPU | GPU memory | Spot | On-demand | 730 h spot | Action |
|---|---|---|---|---|---|---|
| 4-bit | 2× A40Ampere · 74.3 GB needed | 96 GB | $0.12 | $0.18 | $87.60 | Deploy |
| 4-bit | 2× L40Ada Lovelace · 74.3 GB needed | 96 GB | $0.18 | $0.38 | $131.40 | Deploy |
| 4-bit | 2× RTX 6000 AdaAda Lovelace · 74.3 GB needed | 96 GB | $0.18 | $0.38 | $131.40 | Deploy |
| 4-bit | 2× RTX A6000Ampere · 74.3 GB needed | 96 GB | $0.18 | $0.34 | $131.40 | Deploy |
| FP8 | 4× L40Ada Lovelace · 137 GB needed | 192 GB | $0.36 | $0.76 | $262.80 | Deploy |
| FP8 | 4× RTX 6000 AdaAda Lovelace · 137 GB needed | 192 GB | $0.36 | $0.76 | $262.80 | Deploy |
| FP8 | 2× RTX PRO 6000 BlackwellBlackwell · 137 GB needed | 192 GB | $0.38 | $0.78 | $277.40 | Deploy |
| FP8 | 4× L40SAda Lovelace · 137 GB needed | 192 GB | $0.60 | $1.00 | $438.00 | Deploy |
| BF16 | 4× A100 PCIe 80GBAmpere · 262 GB needed | 320 GB | $0.36 | $0.76 | $262.80 | Deploy |
| BF16 | 8× A40Ampere · 262 GB needed | 384 GB | $0.48 | $0.72 | $350.40 | Deploy |
| BF16 | 8× A100 40GBAmpere · 262 GB needed | 320 GB | $0.72 | $1.36 | $525.60 | Deploy |
| BF16 | 8× L40Ada Lovelace · 262 GB needed | 384 GB | $0.72 | $1.52 | $525.60 | Deploy |
Spot capacity can be reclaimed with a 2-minute notice; for a live endpoint, use on-demand. How spot works · serving a language model.
What a long context costs in memory.
Grouped-query attention, 8 KV heads of 128 across 88 layers.
| Context | KV cache, 1 sequence | 8 sequences |
|---|---|---|
| 8K tokens | 2.95 GB | 23.6 GB |
| 32K tokens | 11.8 GB | 94.5 GB |
| 128K tokens | 47.2 GB | 378 GB |
| 256K tokens | 94.5 GB | 756 GB |
Serving several users
KV cacheEvery concurrent request keeps its own cache, so memory for context grows with users × context length. A server batching 8 requests of 32K needs eight times the single-sequence figure — 94.5 GB here.
- Recommended node2× A40
- Weights at 4-bit62.5 GB
- Context that fits, 1 sequence65K
Paged attention (vLLM, SGLang) allocates the cache in blocks as requests grow, so a node holds more short requests than the worst case suggests.
Devstral 2 123B, as published.
- Developer
- Mistral AIDense agentic coding model, 256K context
- Parameters
- 123B125B in the published checkpoint (embedding tables, prediction or vision modules included); memory figures use this count
- Architecture
- Dense model, 88 layersGrouped-query attention, 8 KV heads of 128 across 88 layers
- Context window
- 262,144 tokensAs set in the published configuration
- Published format
- BF16, 250 GB
- Licence
- Custom licence (see the model card)
- Released
- 2 December 2025
- Source
- mistralai/Devstral-2-123B-Instruct-2512config.json read 26 October 2026
Serve it with vLLM
template: vLLMOn 2× A40, from the instance terminal:
$ vllm serve mistralai/Devstral-2-123B-Instruct-2512 \ --tensor-parallel-size 2 \ --max-model-len 32768
Very recent architectures need a recent vLLM; the model card gives the minimum version and any extra flags.
Devstral 2 123B on a GPU — the questions that come up
How much VRAM does Devstral 2 123B need?
For the weights alone: 250 GB at BF16, 125 GB at FP8 and 62.5 GB at 4-bit. Add 11.8 GB of KV cache for one 32K-token context, or 94.5 GB at the full 256K window, and keep about 10% of the memory free for activations.
Can Devstral 2 123B run on a single GPU?
One RTX 4090 (24 GB): no. One RTX 5090 (32 GB): no. One H100 SXM (80 GB): no. One H200 SXM (141 GB): yes, at 4-bit. One B200 SXM (180 GB): yes, at FP8. Those answers assume a 32K context and the widest format that still fits.
What is the cheapest way to run Devstral 2 123B?
Here, 2× A40 at 4-bit: $0.12 per hour on spot and $0.18 on-demand, billed per minute — $87.60 for a 730-hour month on spot. That node has 96 GB of GPU memory for the 74.3 GB this setup needs.
How long a context fits on the recommended node?
With the weights at 4-bit on 2× A40, the remaining memory holds a 16-bit KV cache for about 66,264 tokens of context for one sequence (65K). An 8-bit KV cache doubles that; serving several users at once divides it between them.
Which format should I run it in?
BF16 keeps the published weights untouched and is the format for fine-tuning. FP8 halves the memory and runs in hardware on Hopper, Ada, Blackwell and MI300-class GPUs. 4-bit quantisation (AWQ, GPTQ, GGUF) quarters it, at a quality cost that is larger on small models than on big ones; check it against your own evaluation before relying on it.
How do I deploy it?
Pick the node in the table above and launch it with the vLLM template; the model downloads from Hugging Face (mistralai/Devstral-2-123B-Instruct-2512) on first start. Spread the weights over the node with --tensor-parallel-size equal to the GPU count, and set --max-model-len to the context you need. New architectures need a recent vLLM: check the model card for the minimum version.
Sizing another model? GPU requirements for 64 open models · serving a language model · fine-tuning.
Devstral 2 123B on 2× A40 for $0.12 an hour.
Launch the node with the vLLM template, point it at mistralai/Devstral-2-123B-Instruct-2512, stop it when you are done. Prepaid, billed by the minute.
Billed per minute from the moment the instance is reachable. Minimum credit $30, no subscription.