Lab · LLM VRAM · Gemma
ComputedGemma 3 12B Instruct memory requirements
12.2B parameters — 22.7 GiB of weights at FP16, 6.9 GiB at Q4_K_M, and 384.0 KiB of KV cache per token on top. Solved against 22 real accelerators; 22 of them can hold it.
Parameters
12.2B
12,187,325,040 exactly
Weights, Q4_K_M
6.9 GiB
22.7 GiB unquantized
KV cache
384.0 KiB
per token · 48L × 8 KV × 256
Smallest card (Q4)
12 GB
GeForce RTX 3060 12GB
Weights at each precision
| Precision | Bits/weight | Weights | Source | Notes |
|---|---|---|---|---|
| FP16 / BF16 | 16.00 | 22.7 GiB | measured file | Unquantized. Two bytes per parameter, exactly. |
| Q8_0 | 8.50 | 12.1 GiB | nominal | Effectively lossless; the usual reference point for quantized quality. |
| Q6_K | 6.56 | 9.3 GiB | nominal | Quality loss is hard to measure on most benchmarks. |
| Q5_K_M | 5.67 | 8.0 GiB | nominal | A middle point when Q4 fits with too little room for context. |
| Q4_K_M | 4.83 | 6.9 GiB | nominal | The default choice for local inference — the best size/quality knee. |
| Q3_K_M | 3.91 | 5.5 GiB | nominal | Measurable quality loss. Worth it only to make a model fit at all. |
Every accelerator
Largest quant that fits with at least 4k of context, the context it leaves, and the bandwidth ceiling on decode speed. Each row links to the worked page for that pairing.
| Accelerator | Memory | Bandwidth | Best quant | Max context | Ceiling |
|---|---|---|---|---|---|
| Apple M3 Ultra (512GB) | 512 GB | 819 GB/s | FP16 / BF16 | 131,072 | 32 tok/s |
| H200 141GB (SXM) | 141 GB | 4800 GB/s | FP16 / BF16 | 131,072 | 190 tok/s |
| Apple M4 Max (128GB) | 128 GB | 546 GB/s | FP16 / BF16 | 131,072 | 22 tok/s |
| H100 80GB (SXM5) | 80 GB | 3350 GB/s | FP16 / BF16 | 131,072 | 133 tok/s |
| A100 80GB (SXM) | 80 GB | 2039 GB/s | FP16 / BF16 | 131,072 | 81 tok/s |
| Jetson AGX Orin (64GB) | 64 GB | 204.8 GB/s | FP16 / BF16 | 131,072 | 8 tok/s |
| RTX 6000 Ada Generation | 48 GB | 960 GB/s | FP16 / BF16 | 131,072 | 38 tok/s |
| L40S | 48 GB | 864 GB/s | FP16 / BF16 | 131,072 | 34 tok/s |
| Apple M4 Pro (48GB) | 48 GB | 273 GB/s | FP16 / BF16 | 131,072 | 11 tok/s |
| A100 40GB (SXM) | 40 GB | 1555 GB/s | FP16 / BF16 | 131,072 | 62 tok/s |
| GeForce RTX 5090 | 32 GB | 1792 GB/s | FP16 / BF16 | 105,295 | 71 tok/s |
| GeForce RTX 4090 | 24 GB | 1008 GB/s | Q8_0 | 131,072 | 73 tok/s |
| Radeon RX 7900 XTX | 24 GB | 960 GB/s | Q8_0 | 131,072 | 69 tok/s |
| GeForce RTX 3090 | 24 GB | 936 GB/s | Q8_0 | 131,072 | 68 tok/s |
| Apple M4 (24GB) | 24 GB | 120 GB/s | Q8_0 | 92,205 | 9 tok/s |
| GeForce RTX 5080 | 16 GB | 960 GB/s | Q8_0 | 38,465 | 69 tok/s |
| GeForce RTX 5070 Ti | 16 GB | 896 GB/s | Q8_0 | 38,465 | 65 tok/s |
| GeForce RTX 4080 SUPER | 16 GB | 736 GB/s | Q8_0 | 38,465 | 53 tok/s |
| GeForce RTX 4070 Ti SUPER | 16 GB | 672 GB/s | Q8_0 | 38,465 | 49 tok/s |
| GeForce RTX 4060 Ti 16GB | 16 GB | 288 GB/s | Q8_0 | 38,465 | 21 tok/s |
| GeForce RTX 3060 12GB | 12 GB | 360 GB/s | Q6_K | 23,269 | 33 tok/s |
| Jetson Orin Nano Super (8GB) | 8 GB | 102 GB/s | too tight | — | — |
Questions about this model
How much VRAM does Gemma 3 12B Instruct need?
22.7 GiB for the weights at FP16 and 6.9 GiB at Q4_K_M, from an exact count of 12,187,325,040 parameters. On top of that, the KV cache costs 384.0 KiB per token of context — 832 MiB at 8k and 2.3 GiB at 32k, less than linear because 40 of 48 layers stop growing at a 1024-token window.
What is the smallest GPU that runs Gemma 3 12B Instruct?
Of the 22 accelerators here, the smallest that holds Q4_K_M weights is the GeForce RTX 3060 12GB at 12 GB — 6.9 GiB of weights against 11.0 GiB usable, leaving room for 62k tokens. For unquantized weights you need at least a GeForce RTX 5090.
Why is the KV cache for Gemma 3 12B Instruct the size it is?
Because it stores one key and one value vector per token, per layer: 48 layers × 8 KV heads × 256 dimensions × 2 (K and V) × 2 bytes = 384.0 KiB per token. Grouped-query attention shares those 8 KV heads across 16 query heads, cutting the cache by 2× against multi-head attention. None of this can be read off the parameter count.
Compare with
- Gemma 2 9B Instruct5.4 GiB
- Gemma 2 27B Instruct15.5 GiB
- Gemma 3 27B Instruct15.4 GiB
- Gemma 3 4B Instruct2.4 GiB
- Gemma 3 1B Instruct576 MiB
- Mistral Nemo 12B Instruct7.0 GiB
- OLMo 2 13B Instruct7.8 GiB
- Phi-4 14B8.4 GiB
- Qwen3 14B8.4 GiB
- DeepSeek-R1-Distill-Qwen 14B8.4 GiB
Method and limits. The parameter count and every architecture figure on this page are read from the model's own published config and the Hub's index over its tensor shapes, fetched 2026-08-07 — nothing here is recalled from a model's name. Weight bytes are the size of a real published file wherever one exists and the parameter count times the published llama.cpp bits-per-weight where it does not; every row says which. Speed figures are roofline bounds — memory bandwidth divided by bytes read per token — not benchmarks. Nothing on this page is written by a language model.