Can an M4 Max 64GB Mac run Qwen3 30B-A3B?
M4 Max ยท 64 GB unified memory ยท 546 GB/s ยท MacBook Pro 16" (M4 Max), Mac Studio (M4 Max)
At Q4_K_M it needs about 19.8 GiB, leaving 34.6 GiB spare out of the ~54.4 GiB macOS will let you use. Expect roughly 135 tokens/sec โ faster than you can read.
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 | 56.8 GiB | 61.2 GiB | 41 | No |
| Q8_0 | 30.2 GiB | 33.2 GiB | 78 | Yes, comfortably |
| Q6_K | 23.4 GiB | 26.2 GiB | 100 | Yes, comfortably |
| Q5_K_M | 20.2 GiB | 22.8 GiB | 116 | Yes, comfortably |
| Q4_K_M | 17.4 GiB | 19.8 GiB | 135 | Yes, comfortably |
| Q3_K_M | 13.8 GiB | 16.1 GiB | 170 | Yes, comfortably |
| Q2_K | 10.7 GiB | 12.7 GiB | 221 | 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 | 0.2 GiB | 19.0 GiB | Yes, comfortably | Yes, comfortably |
| 4K | 0.4 GiB | 19.3 GiB | Yes, comfortably | Yes, comfortably |
| 8K | 0.8 GiB | 19.8 GiB | Yes, comfortably | Yes, comfortably |
| 16K | 1.5 GiB | 20.9 GiB | Yes, comfortably | Yes, comfortably |
| 32K | 3.0 GiB | 23.0 GiB | Yes, comfortably | Yes, comfortably |
| 128K | 12.0 GiB | 35.6 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 qwen3:30b-a3b
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/Qwen3-30B-A3B-4bit --prompt "Hello"
Macs that run Qwen3 30B-A3B comfortably
The smallest configuration that handles it is the M1 Max 32GB (MacBook Pro 14" (M1 Max)).
| Mac | Memory | Bandwidth | Tok/s |
|---|---|---|---|
| M1 Max 32GB | 32 GB | 400 GB/s | 99 |
| M2 Max 32GB | 32 GB | 400 GB/s | 99 |
| M4 32GB | 32 GB | 120 GB/s | 30 |
| M3 Max 36GB | 36 GB | 300 GB/s | 74 |
| M4 Max 36GB | 36 GB | 410 GB/s | 101 |
| M4 Pro 48GB | 48 GB | 273 GB/s | 68 |
| M4 Max 48GB | 48 GB | 546 GB/s | 135 |
| M1 Max 64GB | 64 GB | 400 GB/s | 99 |
| M2 Ultra 64GB | 64 GB | 800 GB/s | 198 |
| M4 Pro 64GB | 64 GB | 273 GB/s | 68 |
| M4 Max 64GB | 64 GB | 546 GB/s | 135 |
| M2 Max 96GB | 96 GB | 400 GB/s | 99 |
Common questions
- Can an M4 Max 64GB Mac run Qwen3 30B-A3B?
- Yes. At Q4_K_M it needs about 19.8 GiB of the roughly 54.4 GiB available, generating around 135 tokens per second.
- How fast is Qwen3 30B-A3B on an Mac?
- Around 135 tokens per second. Token generation on Apple Silicon is limited by memory bandwidth, and this machine has 546 GB/s. Because this is a mixture-of-experts model only 3.3B of its 30.5B parameters are read per token, which is why it is faster than its size suggests.
- How much memory does Qwen3 30B-A3B need?
- 17.4 GiB for the weights at Q4_K_M, plus 0.8 GiB for an 8K-token KV cache and about 1.7 GiB of runtime overhead โ 19.8 GiB in total.