Only with CPU offload
Olmo 3.1 32B Instruct at Q4_K_M needs 20.0 GB but only 9.7 GB is addressable, so about 57% of the layers would stream from system RAM at roughly 60 GB/s. Expect around 3.2 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.5 | −0.1% ppl | 24.0 GB over |
| Q6_K | 24.6 GB | 26.4 GB | — | ~2.1 | −0.4% ppl | 16.7 GB over |
| Q5_K_M | 21.3 GB | 23.1 GB | — | ~2.5 | −0.8% ppl | 13.4 GB over |
| Q4_K_M | 18.1 GB | 20.0 GB | — | ~3.2 | −1.9% ppl | 10.3 GB over |
| Q3_K_M | 14.7 GB | 16.5 GB | — | ~4.7 | −5.4% ppl | 6.8 GB over |
| Q2_K | 12.6 GB | 14.4 GB | — | ~6.4 | −15% ppl | 4.7 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 27
The engine underneath most of the others. Every knob is exposed. More on llama.cpp.