Yes — with 11.9 GB to spare
Llama 3.1 8B Instruct at Q4_K_M fits your M3 · 24 GB entirely in unified memory at 8K context, at an estimated 12 tokens per second. Past 103K 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 · 4.5 GB
Llama 3.1 Community
Released Jul 2024
Still the most widely deployed local model, with the largest fine-tune ecosystem. Not the strongest 8B any more.
The VRAM budget
weights 4.5 GB
Weights 4.5 GB
KV cache @ 8K 1.00 GB
Runtime overhead 0.6 GB
Free 11.9 GB of 18.0 GB
Quantisation ladder
| Quant | Weights | Total @ 8K | Max context | Tok/s | Quality | Fit |
|---|---|---|---|---|---|---|
| F16 | 15.0 GB | 16.6 GB | 19K | 3.7 | Reference | Long context |
| Q8_0 | 7.9 GB | 9.5 GB | 75K | 7.0 | −0.1% ppl | Long context |
| Q6_K | 6.1 GB | 7.7 GB | 90K | 9.1 | −0.4% ppl | Long context |
| Q5_K_M | 5.3 GB | 6.9 GB | 96K | 11 | −0.8% ppl | Long context |
| Q4_K_M | 4.5 GB | 6.1 GB | 103K | 12 | −1.9% ppl | Recommended |
| Q3_K_M | 3.7 GB | 5.3 GB | 109K | 15 | −5.4% ppl | Long context |
| Q2_K | 3.1 GB | 4.7 GB | 114K | 18 | −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/Llama-3.1-8B-Instruct-4bit \ --max-tokens 512 --prompt "Hello"
Apple's own array framework. The fastest path on Apple Silicon. More on MLX.
01Download is 4.5 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 18.0 GB of 24 GB. Raising it with iogpu.wired_limit_mb is possible, and risky.
03There is room to go to 103K context on this card.