Computed with the open FitLLM engine — accurate per-layer KV-cache modeling, not a naive estimate. Updated 2026-06.
| Model weights | 23.5 GB |
| KV cache | 0.8 GB |
| Runtime + macOS | 5.9 GB |
| Total used | 36.3 / 48 GB |
| Free | 11.7 GB |
Max context at 8-bit: ~74K tokens. Unified memory is shared by the OS — FitLLM leaves ~20% headroom.
| Quant | Weights | Fits (KV F16) | Used @32K |
|---|---|---|---|
| 4bit | 14.7 GB | ✅ up to 262K ctx | 26.4 / 48 GB |
| 8bit | 23.5 GB | ✅ up to 74K ctx | 36.3 / 48 GB |
| 16bit | 45.1 GB | ❌ won't fit | 60.5 / 48 GB |
Gemma 4 26b A4B interleaves sliding-window (local) and global attention 5:1. The local layers cap their KV cache at the 1024-token window, and the global layers use a different head shape (head_dim 512 vs 256). A naive "all layers × full context × one head_dim" formula over-counts KV cache by several times.
same Mac Models that fit in 48GB: Qwen 3.6 27B, Gemma 4 e2b, Gemma 4 e4b, Gemma 4 12b, Gemma 4 26b A4B.
Open math: fitllm-engine (MIT), from official config.json.
All numbers are computed by the open-source fitllm-engine (MIT) from official model config.json values — reproduce or audit them yourself. Estimates; real usage varies with runtime (llama.cpp / MLX / Ollama), driver and display. Found a mismatch? Report it. · FitLLM home