DeepSeek-R1-Distill-Qwen-32B VRAM requirements
DeepSeek-R1-Distill-Qwen-32B needs about 21.5 GiB of GPU memory at Q4_K_M with an 8K context. That is tight on 24 GB cards like the RTX 4090; 32 GB cards like the RTX 5090 have room for it. At 32K context it needs about 27.9 GiB, which fits 48 GB cards.
These are estimates from the model's config and file sizes, not measurements. How we calculate
VRAM by quantization
| Quant | File size | Total at 8K | Total at 32K |
|---|---|---|---|
| BF16 safetensors | 65.5 GB | 63.7 GiB–65.6 GiB | 69.7 GiB–71.8 GiB |
| GGUF Q8_0 (Unsloth) | 34.8 GB | 34.6 GiB–35.7 GiB | 40.6 GiB–42.1 GiB |
| GGUF Q6_K (Unsloth) | 26.9 GB | 27.2 GiB–28.2 GiB | 33.2 GiB–34.6 GiB |
| GGUF Q5_K_M (Unsloth) | 23.3 GB | 23.8 GiB–24.7 GiB | 29.8 GiB–31.2 GiB |
| GGUF Q4_K_M (Unsloth) | 19.9 GB | 20.6 GiB–21.5 GiB | 26.6 GiB–27.9 GiB |
Names like Q4_K_M and Q8_0 are quantization levels: fewer bits per weight means a smaller file and a small loss of quality. Totals add the KV cache (memory that grows with context length) and runtime buffers, for one chat at a time. Download files
Which GPUs can run it
| Memory | Usable | Examples | At 8K | At 32K |
|---|---|---|---|---|
| 8 GB | 7.0 GiB | RTX 4060, RTX 3060, RTX 5060 Ti +1 more | Does not fit | Does not fit |
| 10 GB | 9.0 GiB | RTX 3080 | Does not fit | Does not fit |
| 12 GB | 11.0 GiB | RTX 4070, RTX 3060, RTX 5070 +2 more | Does not fit | Does not fit |
| 16 GB | 14.0 GiB | RTX 4080 SUPER, RTX 5080, RX 7800 XT +5 more | Does not fit | Does not fit |
| 16 GB | 15.0 GiB | RTX 4060 Ti, RTX 4070 Ti SUPER | Does not fit | Does not fit |
| 20 GB | 18.0 GiB | RX 7900 XT | Does not fit | Does not fit |
| 24 GB | 22.0 GiB | RTX 4090, RX 7900 XTX, RTX 3090 | Tight fit | Does not fit |
| 32 GB | 30.0 GiB | RTX 5090 | Fits | Tight fit |
| 48 GB | 46.0 GiB | L40S | Runs comfortably | Runs comfortably |
| 80 GB | 78.0 GiB | A100, H100 | Runs comfortably | Runs comfortably |
| 64 GB · unified | 54.0 GiB | Apple M2 Max | Runs comfortably | Runs comfortably |
| 128 GB · unified | 96.0 GiB | Ryzen AI Max+ 395 | Runs comfortably | Runs comfortably |
| 128 GB · unified | 112.0 GiB | DGX Spark (GB10) | Runs comfortably | Runs comfortably |
| 128 GB · unified | 116.0 GiB | Apple M4 Max | Runs comfortably | Runs comfortably |
GGUF Q4_K_M (Unsloth), one chat at a time. Usable memory is the total minus a default reserve for the OS and display.
Architecture
- PublisherDeepSeek
- Hugging Face
deepseek-ai/DeepSeek-R1-Distill-Qwen-32B - Total parameters32,763,876,352
- Layers64
- Query heads40
- KV heads8 (gqa)
- Head dimension128
- Context window131,072
The KV cache grows with context: about 2 GiB at 8K and 8 GiB at 32K in FP16. The model has 8 KV heads for 40 query heads (grouped-query attention), which keeps that cache small.
FAQ
Is the download size the same as VRAM use?
No. The Q4_K_M file is about 18.5 GiB, but with an 8K context the total is about 21.5 GiB, because the KV cache and runtime buffers sit on top of the weights.
How much memory does a longer context add?
For DeepSeek-R1-Distill-Qwen-32B the KV cache is about 2 GiB at 8K tokens and 8 GiB at 32K in FP16. The weights stay the same size.
Which quantization should I use?
Start with Q4_K_M (about 21.5 GiB at 8K). If you have the memory, BF16 needs about 65.6 GiB and stays closer to the original weights.
Download files
| Quant | Files | File size | Engine |
|---|---|---|---|
| BF16 safetensors | 65.53 GB 65,527,752,704 bytes | vllm, sglang | |
| GGUF Q8_0 (Unsloth) | DeepSeek-R1-Distill-Qwen-32B-Q8_0.gguf | 34.82 GB 34,820,884,384 bytes | llama.cpp, ollama |
| GGUF Q6_K (Unsloth) | DeepSeek-R1-Distill-Qwen-32B-Q6_K.gguf | 26.89 GB 26,886,154,144 bytes | llama.cpp, ollama |
| GGUF Q5_K_M (Unsloth) | DeepSeek-R1-Distill-Qwen-32B-Q5_K_M.gguf | 23.26 GB 23,262,156,704 bytes | llama.cpp, ollama |
| GGUF Q4_K_M (Unsloth) | DeepSeek-R1-Distill-Qwen-32B-Q4_K_M.gguf | 19.85 GB 19,851,335,584 bytes | llama.cpp, ollama |
How this number is calculated
Total = weight file + KV cache + runtime buffers. The range spans low to high runtime overhead for the engine shown.
GGUF Q4_K_M (Unsloth) · 8,192 tokens · llama.cpp
- Weights (file)
- 18.49 GiB (19,851,335,584 bytes)
- KV cache
- 2.00 GiB (2,147,483,648 bytes)
- Runtime buffers
- 0.13 GiB–1.01 GiB
- Total
- 20.61 GiB–21.50 GiB
- Requested context is within the recorded native window of 131072 tokens.
- Full-resident weight estimates use total parameters, including inactive MoE experts.
- Weight bytes come from the selected weight files only, not from every file in the repository.
- Download file size is not peak GPU memory. Runtime layout, allocator padding, and KV are extra.
- Counted files: DeepSeek-R1-Distill-Qwen-32B-Q4_K_M.gguf.
- Context budget is the number of cached tokens per sequence (prompt plus reserved generation).
- Concurrent sequences share one model replica; weights are not multiplied by sequence count.
- KV dtype is independent of weight quantization unless you change it.
Related pages
Sources
- DeepSeek-R1-Distill-Qwen-32B model card
- config.json — revision 711ad2ea6aa40cfca18895e8aca02ab92df1a746
- safetensors index — metadata.total_size=65527752704
- Artifact repo unsloth/DeepSeek-R1-Distill-Qwen-32B-GGUF
Calculator
Loading catalog snapshot…
Pick a model to see how much memory it needs.