Yes, just — 3.0 GB spare
Qwen2.5-Coder 32B at Q4_K_M fits your M4 · 32 GB entirely in unified memory at 8K context, at an estimated 3.6 tokens per second. Past 19K the KV cache pushes it over — quantise the cache to q8_0, or step down a quantisation, to go longer.
Fully in unified memory
8K context
Q4_K_M · 18.4 GB
Apache 2.0
Released Nov 2024
The first local code model that felt competitive with hosted assistants. Qwen3.8 27B is smaller and far ahead on agentic work.
The VRAM budget
weights 18.4 GB
Weights 18.4 GB
KV cache @ 8K 2.00 GB
Runtime overhead 0.6 GB
Free 3.0 GB of 24.0 GB
Quantisation ladder
| Quant | Weights | Total @ 8K | Max context | Tok/s | Quality | Fit |
|---|---|---|---|---|---|---|
| Q8_0 | 32.5 GB | 35.1 GB | — | ~2.1 | −0.1% ppl | 11.1 GB over |
| Q6_K | 25.0 GB | 27.6 GB | — | ~2.7 | −0.4% ppl | 3.6 GB over |
| Q5_K_M | 21.7 GB | 24.3 GB | 6K | ~3.1 | −0.8% ppl | 0.3 GB over |
| Q4_K_M | 18.4 GB | 21.0 GB | 19K | 3.6 | −1.9% ppl | Recommended |
| Q3_K_M | 14.9 GB | 17.5 GB | 33K | 4.5 | −5.4% ppl | Long context |
| Q2_K | 12.8 GB | 15.4 GB | 42K | 5.2 | −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.
How to run it
$ pip install mlx-lm $ mlx_lm.generate --model mlx-community/Qwen2.5-Coder-32B-Instruct-4bit \ --max-tokens 512 --prompt "Hello"
Apple's own array framework. The fastest path on Apple Silicon. More on MLX.
01Download is 18.4 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 24.0 GB of 32 GB. Raising it with iogpu.wired_limit_mb is possible, and risky.
03Only 3.0 GB is spare, so a long system prompt can still push it over. Its real ceiling here is 19K context.