Your rig

M3 · 24 GB · 24 GB

24 GB unified · 100 GB/s · 18.0 GB addressable by the GPU
Edit hardware Export as JSON

Context length

KV cache at f16, 8K tokens

Quality floor
Q8_0 — near-lossless Q6_K Q5_K_M Q4_K_M — recommended Q3_K_M Q2_K — damaged
KV cache type
Runtime
Ollamallama.cppLM StudioMLX

4 of 5 runtimes drive this device.

Allow CPU offload Include partial-offload fits

Offloaded layers run at 60 GB/s host bandwidth — expect single-digit tokens per second.

Which one should I actually run?

Best models for your M3 · 24 GB

Updated 21 Aug 2026 5 new this week, 14 this month

What do you want to do? Each row is the best-ranked model on that use case's shortlist that fits at Q8_0 and 8K. The ordering is editorial; the sizes and speeds are computed. How the shortlists work.

RecommendationModelWhyQuant · totalTok/s est.
Best overall Gemma 4 12B
Google · Apache 2.0
The 12 GB generalist: text, image and audio in, 140+ languages. Q8_0 · 13.3 GB 4.7 Runs great
Best for coding Qwen3.5 9B
Alibaba · Apache 2.0
The best coding model for 8–12 GB cards. Q8_0 · 10.4 GB 5.9 Runs great
Best reasoning gpt-oss 20B
OpenAI · Apache 2.0
Low/medium/high reasoning effort in 13 GB. MXFP4 · 11.6 GB 14 Runs great
Best for writing Gemma 4 12B
Google · Apache 2.0
The 12 GB writing pick; 140+ languages. Q8_0 · 13.3 GB 4.7 Runs great
Best vision Gemma 4 12B
Google · Apache 2.0
Image and audio understanding on 12 GB. Q8_0 · 13.3 GB 4.7 Runs great
Best for agents gpt-oss 20B
OpenAI · Apache 2.0
Harmony-format tool calling, native 4-bit. MXFP4 · 11.6 GB 14 Runs great
Best translation Gemma 4 12B
Google · Apache 2.0
Broad language coverage on a 12 GB card. Q8_0 · 13.3 GB 4.7 Runs great
Fastest good model gpt-oss 20B
OpenAI · Apache 2.0
3.6B active, native 4-bit. MXFP4 · 11.6 GB 14 Runs great
Best long context Qwen3.5 9B
Alibaba · Apache 2.0
262K native in 8–12 GB. Q8_0 · 14.1 GB
at 128K context
5.9 Runs great

Everything that fits

Runs great

33 of 76 · fits with headroom for a longer prompt
ModelParamsQuantWeights +KV 8KTotal VRAM headroom Tok/sRuntime
gpt-oss 20B 20.9B MoE / 3.6B act MXFP4 10.8 GB 0.19 GB 11.6 GB
6.4 GB free
14 MLX Run
Gemma 3 12B 12.2B Q8_0 12.1 GB 0.81 GB 13.5 GB
4.5 GB free
4.6 MLX Run
Mistral NeMo 12B 12.2B Q8_0 12.1 GB 1.25 GB 13.9 GB
4.1 GB free
4.6 MLX Run
Gemma 4 12B 12B Q8_0 11.9 GB 0.81 GB 13.3 GB
4.7 GB free
4.7 MLX Run
Qwen3.5 9B 9.65B Q8_0 9.5 GB 0.25 GB 10.4 GB
7.6 GB free
5.9 MLX Run
Ornith 1.5 9B New this week 9.41B Q8_0 9.3 GB 0.25 GB 10.2 GB
7.8 GB free
6.0 MLX Run
Ministral 3 8B 8.92B Q8_0 8.8 GB 1.06 GB 10.5 GB
7.5 GB free
6.3 MLX Run
Granite 4.1 8B 8.79B Q8_0 8.7 GB 1.25 GB 10.5 GB
7.5 GB free
6.4 MLX Run
LFM2.5 8B-A1B 8.47B MoE / 1.5B act Q8_0 8.4 GB 0.09 GB 9.1 GB
8.9 GB free
18 MLX Run
Fara 7B 8.29B Q8_0 8.2 GB 0.44 GB 9.2 GB
8.8 GB free
6.8 MLX Run
Qwen3 8B 8.19B Q8_0 8.1 GB 1.13 GB 9.8 GB
8.2 GB free
6.9 MLX Run
Llama 3.1 8B Instruct 8.03B Q8_0 7.9 GB 1.00 GB 9.5 GB
8.5 GB free
7.0 MLX Run
Gemma 4 E4B 8.0B Q8_0 7.9 GB 0.14 GB 8.7 GB
9.3 GB free
7.1 MLX Run
Ling 3.0 Tiny 7.9B-A1.3B New 7.9B MoE / 1.3B act Q8_0 7.8 GB 0.05 GB 8.5 GB
9.5 GB free
20 MLX Run
DeepSeek-R1-Distill-Qwen 7B 7.62B Q8_0 7.5 GB 0.44 GB 8.6 GB
9.4 GB free
7.4 MLX Run
Qwen2.5-Coder 7B 7.62B Q8_0 7.5 GB 0.44 GB 8.6 GB
9.4 GB free
7.4 MLX Run
Olmo 3 7B Instruct 7.3B Q8_0 7.2 GB 2.50 GB 10.3 GB
7.7 GB free
7.7 MLX Run
Mistral 7B Instruct v0.3 7.25B Q8_0 7.2 GB 1.00 GB 8.8 GB
9.2 GB free
7.8 MLX Run
Gemma 4 E2B 5.1B Q8_0 5.0 GB 0.07 GB 5.7 GB
12.3 GB free
11 MLX Run
Qwen3.5 4B 4.66B Q8_0 4.6 GB 0.25 GB 5.5 GB
12.5 GB free
12 MLX Run
Gemma 3 4B 4.3B Q8_0 4.3 GB 0.30 GB 5.2 GB
12.8 GB free
13 MLX Run
Qwen3 4B 4.02B Q8_0 4.0 GB 1.13 GB 5.7 GB
12.3 GB free
14 MLX Run
Ministral 3 3B 3.85B Q8_0 3.8 GB 0.81 GB 5.2 GB
12.8 GB free
15 MLX Run
Phi-4-mini 3.8B 3.84B Q8_0 3.8 GB 1.00 GB 5.4 GB
12.6 GB free
15 MLX Run
Granite 4.1 3B 3.4B Q8_0 3.4 GB 0.63 GB 4.6 GB
13.4 GB free
17 MLX Run
Llama 3.2 3B Instruct 3.21B Q8_0 3.2 GB 0.88 GB 4.7 GB
13.3 GB free
18 MLX Run
LFM2.5 2.6B New 2.7B Q8_0 2.7 GB 0.13 GB 3.4 GB
14.6 GB free
21 MLX Run
Qwen3.5 2B 2.27B Q8_0 2.2 GB 0.09 GB 2.9 GB
15.1 GB free
25 MLX Run
Qwen3 1.7B 1.72B Q8_0 1.7 GB 0.88 GB 3.2 GB
14.8 GB free
33 MLX Run
Llama 3.2 1B Instruct 1.24B Q8_0 1.2 GB 0.25 GB 2.1 GB
15.9 GB free
46 MLX Run
Gemma 3 1B 1.0B Q8_0 1.0 GB 0.04 GB 1.6 GB
16.4 GB free
56 MLX Run
Qwen3.5 0.8B 0.87B Q8_0 0.9 GB 0.09 GB 1.6 GB
16.4 GB free
65 MLX Run
Qwen3 0.6B 0.6B Q8_0 0.6 GB 0.88 GB 2.1 GB
15.9 GB free
94 MLX Run

Runs — tight

5 models · fits at 8K, drop context or quant to go longer
ModelParamsQuantWeights +KV 8KTotal VRAM headroom Tok/sRuntime
Qwen3 14B 14.8B Q8_0 14.6 GB 1.25 GB 16.5 GB
1.5 GB free
3.8 MLX Run
DeepSeek-R1-Distill-Qwen 14B 14.8B Q8_0 14.6 GB 1.50 GB 16.7 GB
1.3 GB free
3.8 MLX Run
Qwen2.5-Coder 14B 14.8B Q8_0 14.6 GB 1.50 GB 16.7 GB
1.3 GB free
3.8 MLX Run
Phi-4 14B 14.7B Q8_0 14.5 GB 1.56 GB 16.7 GB
1.3 GB free
3.8 MLX Run
Ministral 3 14B 13.9B Q8_0 13.8 GB 1.25 GB 15.6 GB
2.4 GB free
4.1 MLX Run

Won't fit in VRAM

38 models · some are possible with CPU offload
ModelParamsQuantWeights +KV 8KTotal Over budget Tok/sRuntime
Kimi K3 2.8T-A104B New 2780B MoE / 104B act Q8_0 2750.9 GB 0.21 GB 2751.7 GB +2733.7 GB ~0.3 MLX Why
Qwen3.8 2.4T-A95B New 2446B MoE / 95B act Q8_0 2420.4 GB 0.72 GB 2421.7 GB +2403.7 GB ~0.3 MLX Why
DeepSeek V4 Pro 1.6T-A49B New 1650B MoE / 49B act Q8_0 1632.7 GB 0.54 GB 1633.9 GB +1615.9 GB ~0.5 MLX Why
Kimi K2.6 1T-A32B 1027B MoE / 32B act Q8_0 1016.2 GB 0.54 GB 1017.4 GB +999.4 GB ~0.8 MLX Why
GLM-5.2 744B-A40B 753B MoE / 40B act Q8_0 745.1 GB 0.69 GB 746.4 GB +728.4 GB ~0.7 MLX Why
DeepSeek-R1 671B 671B MoE / 37B act Q8_0 664.0 GB 0.54 GB 665.1 GB +647.1 GB ~0.7 MLX Why
Qwen3.5 397B-A17B 403B MoE / 17B act Q8_0 398.8 GB 0.23 GB 399.6 GB +381.6 GB ~1.6 MLX Why
Ornith 1.5 397B-A17B New this week 397B MoE / 17B act Q8_0 392.8 GB 0.23 GB 393.7 GB +375.7 GB ~1.6 MLX Why
DeepSeek V4 Flash 284B-A13B New 284B MoE / 13B act Q8_0 281.0 GB 0.38 GB 282.0 GB +264.0 GB ~2.0 MLX Why
Qwen3 235B-A22B 235B MoE / 22B act Q8_0 232.5 GB 1.47 GB 234.6 GB +216.6 GB ~1.2 MLX Why
Qwen3.5 122B-A10B 125B MoE / 10B act Q8_0 123.7 GB 0.19 GB 124.5 GB +106.5 GB ~2.6 MLX Why
Nemotron 3 Super 120B-A12B 124B MoE / 12B act Q8_0 122.7 GB 0.06 GB 123.4 GB +105.4 GB ~2.2 MLX Why
Ling 3.0 Flash 124B-A5B New 124B MoE / 5.1B act Q8_0 122.7 GB 0.06 GB 123.4 GB +105.4 GB ~5.2 MLX Why
Mistral Small 4 119B-A6B 119B MoE / 6.5B act Q8_0 117.8 GB 0.18 GB 118.5 GB +100.5 GB ~4.1 MLX Why
gpt-oss 120B 117B MoE / 5.1B act MXFP4 60.5 GB 0.29 GB 61.4 GB +43.4 GB ~9.9 MLX Why
Llama 4 Scout 109B-A17B 109B MoE / 17B act Q8_0 107.9 GB 1.50 GB 110.0 GB +92.0 GB ~1.6 MLX Why
Llama 3.3 70B Instruct 70.6B Q8_0 69.9 GB 2.50 GB 73.0 GB +55.0 GB ~0.8 MLX Why
DeepSeek-R1-Distill-Llama 70B 70.6B Q8_0 69.9 GB 2.50 GB 73.0 GB +55.0 GB ~0.8 MLX Why
Qwen3.6 35B-A3B 35.9B MoE / 3.3B act Q8_0 35.5 GB 0.16 GB 36.3 GB +18.3 GB ~8.0 MLX Why
Ornith 1.5 35B-A3B New this week 35.9B MoE / 3.3B act Q8_0 35.5 GB 0.16 GB 36.3 GB +18.3 GB ~8.0 MLX Why
LLM-jp 4 33B Thinking New this week 33.2B Q8_0 32.9 GB 2.00 GB 35.5 GB +17.5 GB ~1.7 MLX Why
Qwen3 32B 32.8B Q8_0 32.5 GB 2.00 GB 35.1 GB +17.1 GB ~1.7 MLX Why
DeepSeek-R1-Distill-Qwen 32B 32.8B Q8_0 32.5 GB 2.00 GB 35.1 GB +17.1 GB ~1.7 MLX Why
Qwen2.5-Coder 32B 32.8B Q8_0 32.5 GB 2.00 GB 35.1 GB +17.1 GB ~1.7 MLX Why
Olmo 3.1 32B Instruct 32.2B Q8_0 31.9 GB 1.25 GB 33.7 GB +15.7 GB ~1.8 MLX Why
Nemotron 3.5 Lightning 30B-A3B New 31.6B MoE / 3.2B act Q8_0 31.3 GB 0.05 GB 31.9 GB +13.9 GB ~8.2 MLX Why
Gemma 4 31B 31.3B Q8_0 31.0 GB 2.03 GB 33.6 GB +15.6 GB ~1.8 MLX Why
GLM-4.7-Flash 30B-A3B 31.2B MoE / 3B act Q8_0 30.9 GB 0.41 GB 31.9 GB +13.9 GB ~8.8 MLX Why
Qwen3 30B-A3B 30.5B MoE / 3.3B act Q8_0 30.2 GB 0.75 GB 31.5 GB +13.5 GB ~8.0 MLX Why
Qwen3 Coder 30B-A3B 30.5B MoE / 3.3B act Q8_0 30.2 GB 0.75 GB 31.5 GB +13.5 GB ~8.0 MLX Why
Muse Glimmer 30B New 29.8B Q8_0 29.5 GB 0.18 GB 30.3 GB +12.3 GB ~1.9 MLX Why
Granite 4.1 30B 28.9B Q8_0 28.6 GB 2.00 GB 31.2 GB +13.2 GB ~2.0 MLX Why
Qwen3.8 27B New this week 27.8B Q8_0 27.5 GB 0.50 GB 28.6 GB +10.6 GB ~2.0 MLX Why
Qwen3.6 27B 27.8B Q8_0 27.5 GB 0.50 GB 28.6 GB +10.6 GB ~2.0 MLX Why
Gemma 3 27B 27.4B Q8_0 27.1 GB 1.03 GB 28.7 GB +10.7 GB ~2.1 MLX Why
Gemma 4 26B-A4B 26.5B MoE / 3.8B act Q8_0 26.2 GB 0.51 GB 27.3 GB +9.3 GB ~6.9 MLX Why
Devstral Small 2 24B 24B Q8_0 23.7 GB 1.25 GB 25.6 GB +7.6 GB ~2.4 MLX Why
Mistral Small 3.2 24B 23.6B Q8_0 23.4 GB 1.25 GB 25.2 GB +7.2 GB ~2.4 MLX Why

Totals = quantised weights + f16 KV cache at 8K tokens + 0.6 GB runtime overhead, against 18.0 GB usable unified memory. Tokens per second are estimated from 100 GB/s peak memory bandwidth at batch 1 — not measured. Read the method.