Yes — with 87.8 GB to spare

Gemma 4 12B at Q4_K_M fits your M3 Max · 128 GB entirely in unified memory at 8K context, at an estimated 33 tokens per second. There is room for its full 256K window.

Fully in unified memory 8K context Q4_K_M · 6.7 GB Apache 2.0 Released 29 May 2026 Vision

The "unified" Gemma 4: text, image and audio in one 12B that fits a 12 GB card at Q4. 140+ languages.

What hardware do I need for Gemma 4 12B? →

The VRAM budget

weights 6.7 GB
Weights 6.7 GB KV cache @ 8K 0.81 GB Runtime overhead 0.6 GB Free 87.8 GB of 96.0 GB

Quantisation ladder

QuantWeightsTotal @ 8KMax contextTok/sQualityFit
F16 22.4 GB 23.8 GB 256K 10 Reference Long context
Q8_0 11.9 GB 13.3 GB 256K 19 −0.1% ppl Long context
Q6_K 9.2 GB 10.6 GB 256K 24 −0.4% ppl Long context
Q5_K_M 7.9 GB 9.3 GB 256K 28 −0.8% ppl Long context
Q4_K_M 6.7 GB 8.2 GB 256K 33 −1.9% ppl Recommended
Q3_K_M 5.5 GB 6.9 GB 256K 41 −5.4% ppl Long context
Q2_K 4.7 GB 6.1 GB 256K 48 −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, 8 of 48 layers global), which is why its cache barely grows with context.

How to run it

terminal
$ pip install mlx-lm
$ mlx_lm.generate --model mlx-community/gemma-4-12B-it-4bit \
    --max-tokens 512 --prompt "Hello"

Apple's own array framework. The fastest path on Apple Silicon. More on MLX.

01Download is 6.7 GB. Keep it on an SSD — a first load off a spinning disk takes minutes.
02macOS caps what the GPU may wire down at about 96.0 GB of 128 GB. Raising it with iogpu.wired_limit_mb is possible, and risky.
03There is room to go to the model's full 256K context on this card.
See all models for this rig Compare with another model