Apple M4 Pro (48GB) vs RTX 4090 for local LLMs

The Apple M4 Pro (48GB) runs more models well (49 vs 48 of 69), thanks to its 48 GB of memory. On models that fit both, the RTX 4090 should be about 269% faster, because generation speed follows memory bandwidth (1008 vs 273 GB/s).

Apple M4 Pro (48GB)

  • 48 GB unified memory
  • 273 GB/s bandwidth
  • 49/69 models run well
  • Varies by configuration

NVIDIA RTX 4090

  • 24 GB VRAM
  • 1008 GB/s bandwidth
  • 48/69 models run well
  • $1,599 at launch

Prices are US launch prices (MSRP) for comparison; street prices change daily. Links go to Amazon, where we earn a commission at no cost to you.

Every model, side by side

Best quant that fits and estimated speed at 8K context.

ModelApple M4 Pro (48GB)RTX 4090
Qwen3 0.6BFP16 · ~109 tok/sFP16 · ~403 tok/s
Gemma 3 1BFP16 · ~82 tok/sFP16 · ~302 tok/s
Llama 3.2 1BFP16 · ~66 tok/sFP16 · ~244 tok/s
Qwen3 1.7BFP16 · ~40 tok/sFP16 · ~149 tok/s
Llama 3.2 3BFP16 · ~26 tok/sFP16 · ~94 tok/s
Phi-3.5 Mini 3.8BFP16 · ~21 tok/sFP16 · ~79 tok/s
Phi-4 Mini 3.8BFP16 · ~21 tok/sFP16 · ~79 tok/s
Qwen3 4BFP16 · ~20 tok/sFP16 · ~75 tok/s
Gemma 3 4BFP16 · ~19 tok/sFP16 · ~70 tok/s
Mistral 7B v0.3FP16 · ~11 tok/sFP16 · ~42 tok/s
Qwen2.5 7BFP16 · ~11 tok/sFP16 · ~40 tok/s
Qwen2.5 Coder 7BFP16 · ~11 tok/sFP16 · ~40 tok/s
DeepSeek R1 Distill Qwen 7BFP16 · ~11 tok/sFP16 · ~40 tok/s
Llama 3.1 8BFP16 · ~10 tok/sFP16 · ~38 tok/s
Granite 3.3 8BFP16 · ~10 tok/sFP16 · ~37 tok/s
Qwen3 8BFP16 · ~10 tok/sFP16 · ~37 tok/s
DeepSeek R1 0528 Qwen3 8BFP16 · ~10 tok/sFP16 · ~37 tok/s
Gemma 2 9BFP16 · ~9 tok/sFP16 · ~33 tok/s
Gemma 4 12BFP16 · ~7 tok/sQ8_0 · ~48 tok/s
Mistral Nemo 12BFP16 · ~7 tok/sQ8_0 · ~47 tok/s
Gemma 3 12BFP16 · ~7 tok/sQ8_0 · ~47 tok/s
Qwen2.5 14BFP16 · ~6 tok/sQ8_0 · ~39 tok/s
Phi-4 14BFP16 · ~6 tok/sQ8_0 · ~39 tok/s
Phi-4 Reasoning 14BFP16 · ~6 tok/sQ8_0 · ~39 tok/s
Qwen3 14BFP16 · ~6 tok/sQ8_0 · ~38 tok/s
Qwen2.5 Coder 14BFP16 · ~6 tok/sQ8_0 · ~38 tok/s
DeepSeek R1 Distill Qwen 14BFP16 · ~6 tok/sQ8_0 · ~38 tok/s
gpt-oss 20BQ8_0 · ~43 tok/sQ8_0 · ~158 tok/s
Mistral Small 24BQ8_0 · ~7 tok/sQ6_K · ~31 tok/s
Devstral Small 24BQ8_0 · ~7 tok/sQ6_K · ~31 tok/s
Magistral Small 24BQ8_0 · ~7 tok/sQ6_K · ~31 tok/s
Mistral Small 3.2 24BQ8_0 · ~6 tok/sQ6_K · ~31 tok/s
Gemma 4 26B-A4BQ8_0 · ~41 tok/sQ6_K · ~194 tok/s
Gemma 2 27BQ8_0 · ~6 tok/sQ5_K_M · ~31 tok/s
Gemma 3 27BQ8_0 · ~6 tok/sQ5_K_M · ~31 tok/s
Qwen3.8 27BQ8_0 · ~6 tok/sQ6_K · ~27 tok/s
Qwen3.6 27BQ8_0 · ~6 tok/sQ6_K · ~27 tok/s
Qwen3 30B-A3BQ8_0 · ~47 tok/sQ5_K_M · ~258 tok/s
Qwen3 Coder 30B-A3BQ8_0 · ~47 tok/sQ5_K_M · ~258 tok/s
GLM-4.7 Flash 30B-A3BQ8_0 · ~51 tok/sQ5_K_M · ~283 tok/s
Gemma 4 31BQ8_0 · ~5 tok/sQ4_K_M · ~32 tok/s
Nemotron 3 Nano 30B-A3BQ8_0 · ~44 tok/sQ5_K_M · ~243 tok/s
Qwen2.5 32BQ6_K · ~6 tok/sQ4_K_M · ~30 tok/s
DeepSeek R1 Distill Qwen 32BQ6_K · ~6 tok/sQ4_K_M · ~30 tok/s
Qwen3 32BQ6_K · ~6 tok/sQ4_K_M · ~30 tok/s
QwQ 32BQ6_K · ~6 tok/sQ4_K_M · ~30 tok/s
Qwen2.5 Coder 32BQ6_K · ~6 tok/sQ4_K_M · ~30 tok/s
Qwen3.6 35B-A3BQ6_K · ~67 tok/sQ4_K_M · ~333 tok/s
Mixtral 8x7BQ5_K_M · ~18 tok/sQ2_K · ~125 tok/s
Llama 3.1 70BQ2_K · ~6 tok/sToo big
Llama 3.3 70BQ2_K · ~6 tok/sToo big
DeepSeek R1 Distill Llama 70BQ2_K · ~6 tok/sToo big
Qwen2.5 72BQ2_K · ~6 tok/sToo big
Qwen3 Coder Next 80B-A3BQ2_K · ~146 tok/sToo big
GLM-4.5-Air 106B-A12BToo bigToo big
Llama 4 Scout 17B-16EToo bigToo big
gpt-oss 120BToo bigToo big
Qwen3.8 Flash NextToo bigToo big
Qwen3 235B-A22BToo bigToo big
DeepSeek V4 Flash 284B-A13BToo bigToo big
GLM-5.3 Flash 320B-A18BToo bigToo big
MiniMax M3 428B-A23BToo bigToo big
GLM-5 744B-A40BToo bigToo big
GLM-5.3Too bigToo big
DeepSeek V4.1 FlashToo bigToo big
Mistral Large 4 1T-A52BToo bigToo big
DeepSeek V4 Pro 1.6T-A49BToo bigToo big
Qwen3.8 2.4T-A95BToo bigToo big
Kimi K3.1 Pro 2.8T-A104BToo bigToo big