Yes — with 5.4 GB to spare
Gemma 4 31B at Q4_K_M fits your CPU only · DDR4 dual-channel entirely on the GPU at 8K context, at an estimated 1.2 tokens per second. Past 42K the KV cache pushes it over — quantise the cache to q8_0, or step down a quantisation, to go longer.
Fully on GPU
8K context
Q4_K_M · 17.6 GB
Apache 2.0
Released 2 Apr 2026
Vision
The dense flagship: strongest maths of the 24–32 GB class (89% AIME), clean prose, vision. Q4 is a tight 24 GB fit.
The VRAM budget
weights 17.6 GB
Weights 17.6 GB
KV cache @ 8K 2.03 GB
Runtime overhead 0.6 GB
Free 5.4 GB of 25.6 GB
Quantisation ladder
| Quant | Weights | Total @ 8K | Max context | Tok/s | Quality | Fit |
|---|---|---|---|---|---|---|
| Q8_0 | 31.0 GB | 33.6 GB | — | ~0.7 | −0.1% ppl | 8.0 GB over |
| Q6_K | 23.9 GB | 26.5 GB | 2K | ~0.9 | −0.4% ppl | 0.9 GB over |
| Q5_K_M | 20.7 GB | 23.3 GB | 22K | 1.0 | −0.8% ppl | Long context |
| Q4_K_M | 17.6 GB | 20.2 GB | 42K | 1.2 | −1.9% ppl | Recommended |
| Q3_K_M | 14.2 GB | 16.9 GB | 63K | 1.5 | −5.4% ppl | Long context |
| Q2_K | 12.2 GB | 14.8 GB | 76K | 1.8 | −15% ppl | Long context |
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 (1024 tokens, 10 of 60 layers global), which is why its cache barely grows with context.
How to run it
$ llama-server \
-hf google/gemma-4-31B-it:Q4_K_M \
-c 8192 -ngl 99
The engine underneath most of the others. Every knob is exposed. More on llama.cpp.
01Download is 17.6 GB. Keep it on an SSD — a first load off a spinning disk takes minutes.
02With no GPU, thread count matters more than clock. Start at one thread per physical core.
03There is room to go to 42K context on this card.