gpt-oss-20b
openai/gpt-oss-20bgpt-oss-20b at Q4_K_M is exactly 11,624,759,488 bytes (10.83 GiB / 11.62 GB) — an effective 4.323 bits per weight, not the nominal 4. Its KV cache at 32K is 0.77 GiB, not the 1.50 GiB a flat formula predicts.
Shipped quantizations
| Quant | Size● | Exact bytes● | Effective bpw● | Tensors● | Publisher |
|---|---|---|---|---|---|
| Q3_K_S | 10.68 GiB | 11,463,894,208 | 4.263 | — | unsloth |
| Q2_K | 10.68 GiB | 11,468,317,888 | 4.265 | — | unsloth |
| Q4_0 | 10.71 GiB | 11,501,495,488 | 4.277 | 459 | unsloth |
| Q3_K_M | 10.72 GiB | 11,506,103,488 | 4.279 | 459 | unsloth |
| Q4_1 | 10.78 GiB | 11,577,504,448 | 4.306 | — | unsloth |
| Q4_K_S | 10.82 GiB | 11,618,492,608 | 4.321 | — | unsloth |
| Q4_K_M | 10.83 GiB | 11,624,759,488 | 4.323 | 459 | unsloth |
| Q5_K_S | 10.91 GiB | 11,711,827,648 | 4.356 | — | unsloth |
| Q5_K_M | 10.91 GiB | 11,717,357,248 | 4.357 | 459 | unsloth |
| Q2_K_L | 10.95 GiB | 11,757,884,608 | 4.373 | — | unsloth |
| Q6_K | 11.21 GiB | 12,041,000,128 | 4.478 | 459 | unsloth |
| MXFP4 | 11.28 GiB | 12,109,565,632 | 4.503 | — | lmstudio-community |
| MXFP4 | 11.28 GiB | 12,109,566,624 | 4.503 | — | ggml-org |
| Q8_0 | 11.28 GiB | 12,109,567,168 | 4.503 | 459 | unsloth |
| F16 | 12.85 GiB | 13,792,639,168 | 5.129 | 459 | unsloth |
KV cache by context
| Context | KV cache (f16)● | Flat formula | Overstated by | Full / windowed / recurrent |
|---|---|---|---|---|
| 4,096 | 0.11 GiB | 0.19 GiB | 1.68× | 12 / 12 / 0 |
| 8,192 | 0.21 GiB | 0.38 GiB | 1.83× | 12 / 12 / 0 |
| 16,384 | 0.39 GiB | 0.75 GiB | 1.91× | 12 / 12 / 0 |
| 32,768 | 0.77 GiB | 1.50 GiB | 1.95× | 12 / 12 / 0 |
| 65,536 | 1.52 GiB | 3.00 GiB | 1.98× | 12 / 12 / 0 |
| 131,072 | 3.02 GiB | 6.00 GiB | 1.99× | 12 / 12 / 0 |
12 of 24 layers cache only a 128-token window rather than the full context, on a period of 2. Figures assume the default configuration; --swa-full disables the saving entirely.
Compare with
Will it run on your card?
Why other calculators give a different number
A parameters × bits ÷ 8 estimate puts Q4_K_M at roughly 11.27 GiB. The real file is 10.83 GiB, because a quantization is a mixture and some tensors are always kept at higher precision. The larger discrepancy is the cache: a flat formula gives 1.50 GiB at 32K context where the real figure is 0.77 GiB, because most of this model's layers cache a fixed window rather than the whole context.
Architecture
Questions people ask
- How much VRAM does gpt-oss-20b need?
- Q4_K_M is exactly 11,624,759,488 bytes (10.83 GiB) in weights. Add the KV cache, which depends on your context length, plus roughly half a gigabyte of runtime overhead.
- How large is gpt-oss-20b's KV cache?
- 0.77 GiB at 32K context with an f16 cache, computed per layer. Quantizing the cache to q8_0 roughly halves it, which is often the difference between a context length fitting and not.
- Is gpt-oss-20b a mixture-of-experts model?
- Yes — 32 experts, 4 routed per token. Every expert must be resident, but only the routed ones are read per token, which is why its memory requirement and its speed behave very differently.
- Which quantization of gpt-oss-20b should I use?
- Q4_K_M is the usual default. Pick the largest quantization that fits your card at the context you actually need — the table above gives exact sizes for every one published.