Mac / Apple Silicon LLM Calculator — Can I Run This Model?
Tells you whether an open LLM will actually run on your Apple Silicon Mac. It models the macOS unified-memory GPU cap — the part that trips people up — along with the model's quantized weight size, KV cache, and runtime overhead, then gives a clear verdict and the biggest model your Mac can handle.
How it works
On an Apple Silicon Mac there is no separate graphics card. The CPU, GPU, and Neural Engine share one pool of unified memory. That is what lets a Mac hold large models cheaply — but it also means the GPU cannot use all of the RAM, because macOS keeps a slice for the operating system and everything else you have open. Apple exposes this budget to apps as Metal's recommendedMaxWorkingSetSize. Runtimes like Ollama translate it to a rule of thumb: give the GPU about two-thirds (≈67%) of unified memory on machines up to 36 GB, and about three-quarters (≈75%) above that.
The calculator estimates four numbers and compares them:
- Weights. Model size in bytes is
params × bpw ÷ 8, where bpw is the effective bits-per-weight of the GGUF quant. We use measured real-file values (Q4_K_M ≈ 4.83, Q8_0 ≈ 8.5, Q2_K ≈ 3.35), which run a little above the nominal block sizes because embedding and output tensors stay at higher precision — so estimates match the file sizes Ollama and Hugging Face publish. - KV cache. Attention stores a key and value for every token at every layer:
2 × layers × kv_heads × head_dim × context × 2 bytes. Modern models use grouped-query attention, which keeps far fewer KV heads and makes this term small until the context gets long. - Overhead. A fixed ≈1 GB for the compute graph and runtime buffers.
- Usable GPU memory.
unified_memory × cap%. The verdict compares required (weights + KV + overhead) against this: at or below 90% of usable it “Runs comfortably”, up to 100% it “Runs, but tight”, and above it “Won't fit”.
The speed figure is a memory-bandwidth roofline: decoding a token reads every weight once, so tokens per second is roughly bandwidth ÷ model_size. Real throughput lands lower, so the tool shows a band and labels it an estimate. You can raise the GPU cap yourself on macOS Sonoma or later with sudo sysctl iogpu.wired_limit_mb, which the tool pre-fills when a model is tight or over budget.
Worked examples
Frequently asked questions
Sources & references
- Apple — Mac models and technical specifications (unified memory + bandwidth)
- Apple Developer — Metal MTLDevice.recommendedMaxWorkingSetSize
- Ollama — FAQ: macOS GPU memory limits and iogpu.wired_limit_mb
- llama.cpp — GGUF quantization types and sizes
Chip specs, bandwidth figures, quant sizes, and the macOS GPU-cap heuristic were last cross-checked on 2026-07-09. Weight estimates reconcile to published GGUF download sizes within about 8%. Speed is a bandwidth-bound estimate, not a benchmark.
Related tools
Comments & feedback
Spotted a bug or want an improvement? Tell us — our team reviews every comment, and good ideas get built. Comments are public and anonymous.
Found a bug, edge case, or want another chip or model added?
Email me at [email protected] — most fixes ship within 24 hours.