Only with CPU offload
Olmo 3.1 32B Instruct at Q4_K_M needs 20.0 GB but only 14.4 GB is addressable, so about 31% of the layers would stream from system RAM at roughly 60 GB/s. Expect around 5.7 tokens per second — usable for batch work, painful for chat.
The largest fully open model you can audit end to end. Q4 fits 24 GB, tightly.
What hardware do I need for Olmo 3.1 32B Instruct? →
Fits instead: Olmo 3 7B Instruct (7.2 GB)
The VRAM budget
Quantisation ladder
| Quant | Weights | Total @ 8K | Max context | Tok/s | Quality | Fit |
|---|---|---|---|---|---|---|
| Q8_0 | 31.9 GB | 33.7 GB | — | ~1.8 | −0.1% ppl | 19.3 GB over |
| Q6_K | 24.6 GB | 26.4 GB | — | ~2.8 | −0.4% ppl | 12.0 GB over |
| Q5_K_M | 21.3 GB | 23.1 GB | — | ~3.8 | −0.8% ppl | 8.7 GB over |
| Q4_K_M | 18.1 GB | 20.0 GB | — | ~5.7 | −1.9% ppl | 5.6 GB over |
| Q3_K_M | 14.7 GB | 16.5 GB | — | ~13 | −5.4% ppl | 2.1 GB over |
| Q2_K | 12.6 GB | 14.4 GB | 7K | ~46 | −15% ppl | 0.0 GB over |
Quality is the published perplexity delta against f16 weights. Max context assumes an f16 KV cache; q8_0 roughly doubles it. This model interleaves sliding-window layers (4096 tokens, 16 of 64 layers global), which is why its cache barely grows with context.
How to run it
$ llama-server \
-hf allenai/Olmo-3.1-32B-Instruct:Q4_K_M \
-c 8192 -ngl 44
The engine underneath most of the others. Every knob is exposed. More on llama.cpp.