Which local LLMs can the Apple M2 Ultra run?

Unified memory — by default the GPU can use about 70% of it

Assumes 8k context and an f16 KV cache. Verdicts are shown for each memory size.

Specs

Memory options
64 GB · 128 GB · 192 GB
Memory bandwidth
800.0 GB/s
FP16 compute
54.0 TFLOPS
Launch year
2023

Verdicts at a glance

At Q4_K_M (or the closest available quant) with 8k context.

  • 64 GBRuns great19 modelsRuns well5 modelsRuns slowly1 modelWon't run4 models2 more models run at a lower quant.
  • 128 GBRuns great22 modelsRuns well5 modelsRuns slowly1 modelWon't run1 model1 more model runs at a lower quant.
  • 192 GBRuns great22 modelsRuns well5 modelsRuns slowly2 modelsWon't run0 models

How to read the verdicts

Runs great
Fully on the GPU at 20 tok/s or more
Runs well
Fully on the GPU at 8–20 tok/s; MoE experts in system RAM at 20 tok/s or more; or at least 90% on the GPU at 8 tok/s or more
Runs slowly
2–8 tok/s; CPU-only; less than 90% on the GPU; or MoE experts in system RAM below 20 tok/s
Won't run
Does not fit, or under 2 tok/s

Every model on the Apple M2 Ultra

Scroll sideways to see every column.

29 models sorted by verdict and speed, with 192 GB of memory
ModelVerdictSpeedQuantMemoryRuns asContextNotes
EXAONE 4.0 1.2B
Runs great
est. 268.0 tok/s214.4–321.6calibrated estimate ±20%
Q4_K_M1.9 / 134.4 GBUnified memoryup to 64k—
HyperCLOVA X SEED 1.5B
Runs great
est. 193.9 tok/s155.1–232.7calibrated estimate ±20%
Q4_K_M2.4 / 134.4 GBUnified memoryup to 16k—
Qwen3.5 35B-A3B
Runs great
est. 112.8 tok/s90.3–135.4calibrated estimate ±20%
Q4_K_M23.4 / 134.4 GBUnified memoryup to 256k—
gpt-oss-20b
Runs great
est. 101.4 tok/s81.1–121.7calibrated estimate ±20%
MXFP412.9 / 134.4 GBUnified memoryup to 128k
  • reasoning model
Qwen3 30B-A3B (2507)
Runs great
est. 82.5 tok/s66.0–99.0calibrated estimate ±20%
Q4_K_M19.9 / 134.4 GBUnified memoryup to 64k—
Gemma 4 26B-A4B
Runs great
est. 80.3 tok/s64.2–96.3calibrated estimate ±20%
Q4_K_M17.9 / 134.4 GBUnified memoryup to 128k—
gpt-oss-120b
Runs great
79.7 tok/s8k estimate 75.6 tok/s (60.5–90.7, calibrated estimate ±20%)measured (1 run, 2k context)
MXFP464.3 / 134.4 GBUnified memoryup to 128k
  • reasoning model
Kanana 1.5 15.7B-A3B
Runs great
est. 75.6 tok/s60.5–90.7calibrated estimate ±20%
Q4_K_M12.1 / 134.4 GBUnified memoryup to 32k—
DeepSeek R1 Distill Llama 8B
Runs great
est. 58.7 tok/s47.0–70.5calibrated estimate ±20%
Q4_K_M6.6 / 134.4 GBUnified memoryup to 32k
  • reasoning model
Kanana 1.5 8B
Runs great
est. 58.7 tok/s47.0–70.5calibrated estimate ±20%
Q4_K_M6.6 / 134.4 GBUnified memoryup to 32k—
Llama 3.1 8B
Runs great
est. 58.7 tok/s47.0–70.5calibrated estimate ±20%
Q4_K_M6.6 / 134.4 GBUnified memoryup to 64k—
Qwen3.5 9B
Runs great
est. 57.3 tok/s45.9–68.8calibrated estimate ±20%
Q4_K_M6.7 / 134.4 GBUnified memoryup to 256k—
Qwen3 8B
Runs great
est. 56.4 tok/s45.1–67.7calibrated estimate ±20%
Q4_K_M6.8 / 134.4 GBUnified memoryup to 32k—
Gemma 4 12B
Runs great
est. 46.0 tok/s36.8–55.2calibrated estimate ±20%
Q4_K_M8.2 / 134.4 GBUnified memoryup to 128k—
Gemma 3 12B
Runs great
est. 44.9 tok/s35.9–53.9calibrated estimate ±20%
Q4_K_M8.4 / 134.4 GBUnified memoryup to 128k—
Qwen3.5 122B-A10B
Runs great
est. 35.9 tok/s28.7–43.1calibrated estimate ±20%
Q4_K_M79.0 / 134.4 GBUnified memoryup to 128k—
HyperCLOVA X SEED Think 14B
Runs great
est. 34.5 tok/s24.2–44.9theoretical estimate ±30%
Q4_K_M10.8 / 134.4 GBUnified memoryup to 16k
  • reasoning model
Qwen3 14B
Runs great
est. 34.0 tok/s27.2–40.8calibrated estimate ±20%
Q4_K_M10.9 / 134.4 GBUnified memoryup to 32k—
Phi-4
Runs great
est. 32.8 tok/s26.2–39.4calibrated estimate ±20%
Q4_K_M11.3 / 134.4 GBUnified memoryup to 8k
  • reasoning model
Solar Open 100B
Runs great
est. 26.1 tok/s20.9–31.3calibrated estimate ±20%
Q4_K_M64.4 / 134.4 GBUnified memoryup to 16k—
Mistral Small 3.2 24B
Runs great
est. 22.5 tok/s18.0–27.0calibrated estimate ±20%
Q4_K_M16.2 / 134.4 GBUnified memoryup to 16k—
Gemma 3 27B
Runs great
est. 20.4 tok/s16.4–24.5calibrated estimate ±20%
Q4_K_M17.8 / 134.4 GBUnified memoryup to 8k—
Qwen3.5 27B
Runs well
est. 19.9 tok/s16.0–23.9calibrated estimate ±20%
Q4_K_M18.2 / 134.4 GBUnified memoryup to 256k
  • Try IQ4_XS: Runs great
EXAONE 4.0 32B
Runs well
est. 17.7 tok/s14.2–21.3calibrated estimate ±20%
Q4_K_M20.5 / 134.4 GBUnified memoryup to 128k
  • reasoning model
EXAONE 4.5 33B
Runs well
est. 17.1 tok/s13.7–20.5calibrated estimate ±20%
Q4_K_M21.2 / 134.4 GBUnified memoryup to 128k
  • reasoning model
Qwen3 32B
Runs well
est. 16.1 tok/s12.9–19.3calibrated estimate ±20%
Q4_K_M22.5 / 134.4 GBUnified memoryup to 32k
  • Q2_K (heavy quality loss): Runs great
DeepSeek R1 Distill Qwen 32B
Runs well
est. 16.0 tok/s12.8–19.2calibrated estimate ±20%
Q4_K_M22.6 / 134.4 GBUnified memoryup to 32k
  • reasoning model
Solar Open 2 250B
Runs slowly
est. 27.1 tok/s19.0–35.2theoretical estimate ±30%
IQ4_XS136.6 GB RAMCPU onlyup to 256k
  • CPU inference — capped at Runs slowly
  • Q2_K (heavy quality loss): Runs great
Llama 3.3 70B
Runs slowly
est. 7.8 tok/s6.2–9.3calibrated estimate ±20%
Q4_K_M45.8 / 134.4 GBUnified memoryup to 128k
  • Try IQ4_XS: Runs well

Reasoning models spend extra tokens thinking, so their speed thresholds are 1.5× stricter (30 / 12 / 3 tok/s).

Verdict by memory size

Q4_K_M verdict for each memory configuration — open the model page for speeds
Model64 GB128 GB192 GB
EXAONE 4.0 1.2BRuns greatRuns greatRuns great
HyperCLOVA X SEED 1.5BRuns greatRuns greatRuns great
Qwen3.5 35B-A3BRuns greatRuns greatRuns great
gpt-oss-20bRuns greatRuns greatRuns great
Qwen3 30B-A3B (2507)Runs greatRuns greatRuns great
Gemma 4 26B-A4BRuns greatRuns greatRuns great
gpt-oss-120bWon't runRuns greatRuns great
Kanana 1.5 15.7B-A3BRuns greatRuns greatRuns great
DeepSeek R1 Distill Llama 8BRuns greatRuns greatRuns great
Kanana 1.5 8BRuns greatRuns greatRuns great
Llama 3.1 8BRuns greatRuns greatRuns great
Qwen3.5 9BRuns greatRuns greatRuns great
Qwen3 8BRuns greatRuns greatRuns great
Gemma 4 12BRuns greatRuns greatRuns great
Gemma 3 12BRuns greatRuns greatRuns great
Qwen3.5 122B-A10BWon't runRuns greatRuns great
HyperCLOVA X SEED Think 14BRuns greatRuns greatRuns great
Qwen3 14BRuns greatRuns greatRuns great
Phi-4Runs greatRuns greatRuns great
Solar Open 100BWon't runRuns greatRuns great
Mistral Small 3.2 24BRuns greatRuns greatRuns great
Gemma 3 27BRuns greatRuns greatRuns great
Qwen3.5 27BRuns wellRuns wellRuns well
EXAONE 4.0 32BRuns wellRuns wellRuns well
EXAONE 4.5 33BRuns wellRuns wellRuns well
Qwen3 32BRuns wellRuns wellRuns well
DeepSeek R1 Distill Qwen 32BRuns wellRuns wellRuns well
Solar Open 2 250BWon't runWon't runRuns slowly
Llama 3.3 70BRuns slowlyRuns slowlyRuns slowly

Measured results on the Apple M2 Ultra

Public benchmarks we calibrate against. Their conditions (context, backend, flags) can differ from the estimates above.

Measured results on the Apple M2 Ultra
ModelQuantBackendContextPrompt (tok/s)Generation (tok/s)FlagsSourceMeasured
gpt-oss-120bMXFP4llama.cpp2k1,245.079.7—github.com2025-08-15
llama-2-7bQ4_0llama.cpp5121,238.094.3Metalgithub.com2023-11-15

Frequently asked questions

What is the largest model that runs entirely on the Apple M2 Ultra?

Qwen3.5 122B-A10B at Q4_K_M (a 78.26 GB file) fits entirely in 192 GB of unified memory with 8k context, at est. 35.9 tok/s (28.7–43.1, calibrated estimate ±20%).

How many local LLMs run well on the Apple M2 Ultra?

At Q4_K_M with 8k context, with 192 GB of memory, out of 29 tracked models: 22 run great, 5 run well, 2 run slowly and 0 won't run.

Can the Apple M2 Ultra run a 70B model like Llama 3.3 70B?

Runs slowly — Unified memory, Q4_K_M: est. 7.8 tok/s (6.2–9.3, calibrated estimate ±20%).

Speeds are estimates from memory bandwidth, calibrated against public benchmarks, and each one comes with an error band and a confidence label. Real results vary with drivers, backend, context length and thermals.