Skip to content

M2 vs M4 for local AI

M2 runs 10 of 74 open models well and M4 runs 18. Here is every model on both, with the grade and the speed you would get.

Runs more models well (grade B or better)

M4

M2: 10 · M4: 18

Faster on the models both run

M4 · ×1.2

Median speed ratio over 10 models both load fully in memory.

Most intelligent model it runs well

M2—

M4qwenQwen3.5 9B

Specs that matter

M2 M4
Memory compared8 GB (base configuration)16 GB (base configuration)
Memory bandwidth100 GB/s120 GB/s
Memory typeUnified (shared with the system)Unified (shared with the system)
BackendMetalMetal
Released20222024

Every model on both

Grade and output speed at Q4_K_M with an 8K context; green marks the better of the two.

ModelECIM2M4
moonshotKimi K3157F—F—
deepseekDeepSeek V4 Pro 0813155F—F—
deepseekDeepSeek V4.1 Flash155F—F—
deepseekDeepSeek V4 Flash 0731154F—F—
zaiGLM 5.3 Flash152F—F—
zaiGLM 5.2152F—F—
moonshotKimi K2.6151F—F—
tInkling Small150F—F—
moonshotKimi K2.7 Code150F—F—
zaiGLM 5.1150F—F—
qwenQwen3.8 27B149F—F—
deepseekDeepSeek V4 Pro149F—F—
tInkling149F—F—
moonshotKimi K2.5148F—F—
minimaxMiniMax M3147F—F—
minimaxMiniMax M2.5147F—F—
qwenQwen3.5 397B A17B147F—F—
qwenQwen3.6 27B147F—F—
deepseekDeepSeek V3.2146F—F—
nvidiaNemotron 3 Ultra 550B A55B146F—F—
deepseekDeepSeek V4 Flash146F—F—
moonshotKimi K2 Thinking146F—F—
minimaxMiniMax M2.7146F—F—
zaiGLM 5146F—F—
deepseekDeepSeek V3.2 Exp145F—F—
qwenQwen3.6 35B A3B144F—F—
qwenQwen3 235B A22B Thinking 2507144F—F—
zaiGLM 4.7144F—F—
googleGemma 4 31B143F—F—
qwenQwen3.5 35B A3B143F—F—
googleGemma 4 26B A4B142F—F—
mistralMistral Medium 3.5 128B141F—F—
moonshotKimi K2140F—F—
openaigpt-oss 120b140F—F—
deepseekDeepSeek V3.1140F—F—
qwenQwen3 30B A3B Thinking 2507140F—F—
qwenQwen3.5 9B139F—B~17 t/s
qwenQwen3 235B A22B 2507139F—F—
openaigpt-oss 20b138F—F—
qwenQwen3 30B A3B 2507137F—F—
mistralMagistral Small 2506133F—F—
mistralMistral Small 3.2 24B132F—F—
mistralMagistral Small 2509131F—F—
microsoftPhi-4 14B130F—B~11 t/s
metaLlama 4 Scout 17B 16E130F—F—
metaLlama 3.3 70B127F—F—
metaLlama 3.1 8B117F—B~18 t/s
cohereCommand A+—F—F—
qwenQwen3.8 Flash Next—F—F—
qwenQwen3.5 122B A10B—F—F—
mistralMistral Small 4 119B—F—F—
qwenQwen3 Coder Next—F—F—
moonshotKimi Linear 48B A3B—F—F—
ai2Olmo 3.1 32B Think—F—F—
nvidiaNemotron 3.5 Lightning 30B A3B—F—F—
zaiGLM 4.7 Flash—F—F—
cohereNorth Mini Code 1.0—F—F—
ibmGranite 4.2 30B—F—F—
mistralDevstral Small 2 24B—F—F—
mistralMinistral 3 14B—F—B~12 t/s
googleGemma 4 12B—F—B~14 t/s
mistralMinistral 3 8B—F—B~18 t/s
ibmGranite 4.2 8B—F—B~16 t/s
googleGemma 4 E4B—B~17 t/sB~20 t/s
ai2Olmo 3 7B—F—B~15 t/s
googleGemma 4 E2B—A~26 t/sA~30 t/s
qwenQwen3.5 4B—A~28 t/sA~32 t/s
mistralMinistral 3 3B—A~30 t/sA~35 t/s
ibmGranite 4.2 3B—A~30 t/sA~34 t/s
metaLlama 3.2 3B—A~31 t/sA~36 t/s
huggingfaceSmolLM3 3B—A~34 t/sA~40 t/s
liquidLFM2.5 2.6B—S~41 t/sS~48 t/s
qwenQwen3.5 2B—S~51 t/sS~58 t/s
qwenQwen3.5 0.8B—S~86 t/sS~95 t/s

Estimates from published specs and measurements, calibrated per backend. Your drivers, settings and runtime change the real numbers.

Change memory, context or quantOpen this comparison in the interactive tool.