Can an M3 Ultra 512GB Mac run Llama 3.1 405B?
M3 Ultra ยท 512 GB unified memory ยท 819 GB/s ยท Mac Studio (M3 Ultra)
At Q4_K_M it needs about 247.3 GiB, leaving 248.7 GiB spare out of the ~496.0 GiB macOS will let you use. Expect roughly 3 tokens/sec โ too slow for interactive use.
Where the memory goes
Three things occupy memory when a model is loaded: the weights themselves, the KV cache that holds the conversation, and the runtime's own working buffers. Only the first is fixed โ the KV cache grows with every token in your context.
| Quantisation | Weights | Total | Tok/s | Fits? |
|---|---|---|---|---|
| FP16 | 754.4 GiB | 796.8 GiB | 1 | No |
| Q8_0 | 400.8 GiB | 425.5 GiB | 2 | Yes, but tight |
| Q6_K | 311.2 GiB | 331.5 GiB | 2 | Yes, comfortably |
| Q5_K_M | 268.7 GiB | 286.9 GiB | 2 | Yes, comfortably |
| Q4_K_M | 231.0 GiB | 247.3 GiB | 3 | Yes, comfortably |
| Q3_K_M | 183.9 GiB | 197.8 GiB | 3 | Yes, comfortably |
| Q2_K | 141.4 GiB | 153.3 GiB | 4 | Yes, comfortably |
The default. Best quality-per-gigabyte for most people.
How long a context fits
The KV cache is often what breaks a setup that looked fine at load time. Quantising it to 8-bit roughly halves its footprint with little measurable quality cost.
| Context | KV cache | Total | FP16 KV | Q8 KV |
|---|---|---|---|---|
| 2K | 1.0 GiB | 244.1 GiB | Yes, comfortably | Yes, comfortably |
| 4K | 2.0 GiB | 245.2 GiB | Yes, comfortably | Yes, comfortably |
| 8K | 3.9 GiB | 247.3 GiB | Yes, comfortably | Yes, comfortably |
| 16K | 7.9 GiB | 251.6 GiB | Yes, comfortably | Yes, comfortably |
| 32K | 15.8 GiB | 260.0 GiB | Yes, comfortably | Yes, comfortably |
| 128K | 63.0 GiB | 310.9 GiB | Yes, comfortably | Yes, comfortably |
How to run it
Ollama is the shortest path. It picks a quantisation automatically โ usually Q4_K_M, which is what the numbers above assume.
brew install ollama
ollama serve &
ollama run llama3.1:405b
For MLX โ Apple's own array framework, typically a little faster than llama.cpp on Apple Silicon:
pip install mlx-lm
mlx_lm.generate --model mlx-community/Llama-3-1-405B-4bit --prompt "Hello"
Macs that run Llama 3.1 405B comfortably
The smallest configuration that handles it is the M3 Ultra 512GB (Mac Studio (M3 Ultra)).
| Mac | Memory | Bandwidth | Tok/s |
|---|---|---|---|
| M3 Ultra 512GB | 512 GB | 819 GB/s | 3 |
Common questions
- Can an M3 Ultra 512GB Mac run Llama 3.1 405B?
- Yes. At Q4_K_M it needs about 247.3 GiB of the roughly 496.0 GiB available, generating around 3 tokens per second.
- How fast is Llama 3.1 405B on an Mac?
- Around 3 tokens per second. Token generation on Apple Silicon is limited by memory bandwidth, and this machine has 819 GB/s.
- How much memory does Llama 3.1 405B need?
- 231.0 GiB for the weights at Q4_K_M, plus 3.9 GiB for an 8K-token KV cache and about 12.4 GiB of runtime overhead โ 247.3 GiB in total.