Can It Run?
Home โ€บ Qwen2.5 72B โ€บ M2 Ultra 64GB

Can an M2 Ultra 64GB Mac run Qwen2.5 72B?

M2 Ultra ยท 64 GB unified memory ยท 800 GB/s ยท Mac Studio (M2 Ultra), Mac Pro (M2 Ultra)

Just barely โ€” and you will feel it.

Qwen2.5 72B at Q4_K_M needs about 46.8 GiB against roughly 54.4 GiB usable โ€” that is 86% of your budget. It will load, but close your browser first, keep the context short, and expect memory pressure. Around 14 tokens/sec.

Weights
41.5 GiB
72.7B params @ Q4_K_M
KV cache
2.5 GiB
8K context, FP16
Overhead
2.9 GiB
runtime + activations
Total needed
46.8 GiB
of ~54.4 GiB usable
Est. speed
14 tok/s
800 GB/s bandwidth
Max context
16K tokens
at Q4_K_M

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.

QuantisationWeightsTotalTok/sFits?
FP16135.4 GiB145.5 GiB4No
Q8_071.9 GiB78.8 GiB8No
Q6_K55.9 GiB62.0 GiB11No
Q5_K_M48.2 GiB54.0 GiB12Yes, but tight
Q4_K_M41.5 GiB46.8 GiB14Yes, but tight
Q3_K_M33.0 GiB38.0 GiB18Yes, comfortably
Q2_K25.4 GiB30.0 GiB23Yes, 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.

ContextKV cacheTotalFP16 KVQ8 KV
2K0.6 GiB44.7 GiBYes, comfortablyYes, comfortably
4K1.3 GiB45.4 GiBYes, comfortablyYes, comfortably
8K2.5 GiB46.8 GiBYes, but tightYes, comfortably
16K5.0 GiB49.6 GiBYes, but tightYes, but tight
32K10.0 GiB55.2 GiBNoYes, but tight
128K40.0 GiB88.8 GiBNoNo

What to run instead on an M2 Ultra 64GB Mac

These are the largest models that fit comfortably on this machine at Q4_K_M with an 8K context.

ModelSizeTotalTok/s
DeepSeek-R1-Distill-Llama-70B70.6B45.6 GiB15Yes, comfortably
Llama 3.3 70B70.6B45.6 GiB15Yes, comfortably
Mixtral 8x7B46.7B29.8 GiB51Yes, comfortably
DeepSeek-R1-Distill-Qwen-32B32.8B22.4 GiB32Yes, comfortably
Qwen2.5 32B32.8B22.4 GiB32Yes, comfortably
Qwen2.5-Coder 32B32.8B22.4 GiB32Yes, 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 qwen2.5:72b

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/Qwen2-5-72B-4bit --prompt "Hello"
You are close to the limitIf it stutters or gets killed, raise the Metal memory cap before loading: sudo sysctl iogpu.wired_limit_mb=55705. This resets on reboot. Quantising the KV cache (--kv-cache-type q8_0 in llama.cpp) buys back 1.2 GiB.

Macs that run Qwen2.5 72B comfortably

The smallest configuration that handles it is the M2 Max 96GB (MacBook Pro 16" (M2 Max)).

MacMemoryBandwidthTok/s
M2 Max 96GB96 GB400 GB/s7
M3 Ultra 96GB96 GB819 GB/s15
M3 Max 128GB128 GB400 GB/s7
M4 Max 128GB128 GB546 GB/s10
M2 Ultra 192GB192 GB800 GB/s14
M3 Ultra 256GB256 GB819 GB/s15
M3 Ultra 512GB512 GB819 GB/s15

Common questions

Can an M2 Ultra 64GB Mac run Qwen2.5 72B?
Yes. At Q4_K_M it needs about 46.8 GiB of the roughly 54.4 GiB available, generating around 14 tokens per second.
How fast is Qwen2.5 72B on an Mac?
Around 14 tokens per second. Token generation on Apple Silicon is limited by memory bandwidth, and this machine has 800 GB/s.
How much memory does Qwen2.5 72B need?
41.5 GiB for the weights at Q4_K_M, plus 2.5 GiB for an 8K-token KV cache and about 2.9 GiB of runtime overhead โ€” 46.8 GiB in total.