Can I run GPT-OSS 20B?
GPT-OSS 20B by OpenAI needs around 24 GB of RAM at the recommended 4-bit quantization (12.7 GB download). Your hardware is checked below β instantly, nothing leaves your browser. Expect roughly ~160 tok/s on a Apple M-series Max.
Reading your hardware signalsβ¦
Real-world notes
GPT-OSS 20B is OpenAI's open-weight reasoning model, and the key thing to understand is that it is a mixture-of-experts: of its 20.9B total parameters, only 3.6B activate per token. That means it runs much faster than a dense 20B model would, but you still have to hold the whole thing in memory. At a 4-bit quant it lands around 12.7 GB, and the practical floor is about 24 GB of RAM. It does not fit on a 12 GB card like an RTX 3060, so realistically you are looking at a 24 GB GPU like a 4090, or an Apple Silicon Mac with plenty of unified memory.
In daily use it feels quick for its size, which is the MoE payoff. On an RTX 4090 you can expect around 393 tokens per second, and on an M-series Max chip roughly 160 tok/s, both well past reading speed. CPU-only on DDR5 drops to about 23 tok/s, usable for batch jobs but not interactive chat. The 128K context window is generous, but it is the part that quietly eats memory: fill it all the way and total usage climbs to about 38.5 GB once the KV cache is loaded. Keep working context modest unless you have headroom to spare, or drop to the q2 build near 8.8 GB.
It is built for chat and reasoning rather than coding, so for programming work something like Codestral 22B generally serves you better, and Mistral Small 3.1 24B is the pick if you also want vision. Its standout trait is reasoning quality at a 3.6B active-parameter cost, and if you want more headroom the larger GPT-OSS 120B sibling scales the same recipe up. The license is Apache 2.0, so it is genuinely free to use, including commercially and in production, with no provider-specific strings attached.
Specifications
Size by quantization
| Quantization | Bits/weight | Download | Min RAM | Quality |
|---|---|---|---|---|
| Q2_K | 3.35 | 8.8 GB | 16 GB | Noticeable loss |
| Q4_K_MRecommended | 4.85 | 12.7 GB | 24 GB | Recommended |
| Q5_K_M | 5.65 | 14.8 GB | 24 GB | High |
| Q8_0 | 8.5 | 22.2 GB | 32 GB | Near-original |
| F16 | 16 | 41.8 GB | 64 GB | Original |
Sizes are estimates from parameter count Γ bits per weight; real GGUF builds vary slightly. Β· Data updated: 2026-06-11 Β· How we calculate these numbers β
Memory needed by context length
| Context | KV cache (est.) | Total memory (Q4) |
|---|---|---|
| 4K tokens | ~0.8 GB | ~13.5 GB |
| 8K tokens | ~1.6 GB | ~14.3 GB |
| 32K tokens | ~6.5 GB | ~19.2 GB |
| 128K tokens | ~25.8 GB | ~38.5 GB |
The KV cache grows with context length β a model that fits at 4K can run out of memory at 32K. Estimates assume an FP16 cache with grouped-query attention; actual usage varies by runtime.
Estimated speed by hardware
| Hardware | Bandwidth | ~Speed |
|---|---|---|
| NVIDIA RTX 3060 12GB | 360 GB/s | Won't fit in VRAM |
| NVIDIA RTX 4090 24GB | 1008 GB/s | ~393 tok/s |
| Apple M-series (base) | 100 GB/s | ~39 tok/s |
| Apple M-series Pro | 270 GB/s | ~105 tok/s |
| Apple M-series Max | 410 GB/s | ~160 tok/s |
| CPU only (dual-channel DDR5) | 60 GB/s | ~23 tok/s |
Token generation is memory-bandwidth bound: tok/s β bandwidth Γ 0.85 Γ· model size at Q4. Real-world numbers vary by runtime and context length.
Run it locally
The easiest path is Ollama β one command and you're chatting:
ollama run gpt-oss:20bSources & downloads