63 measured runs

Measured speeds

Real runs, with the source for each one. We also use them to check our own speed estimate — in public.

49/52

short-prompt runs fall inside our estimated speed range

9%

typical gap between the middle of our range and the measured speed

Our estimate is simple physics: to write one word, the computer reads the whole active model from memory. We tuned two numbers on these runs, so treat this as a fit, not a blind test. New runs get added here and checked against the same formula. How it works.

55101020205050100100200200400400Apple M1 (4P+4E CPU, 8-core GPU) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 14.15 tok/s, estimate 10–18Apple M3 (4P+4E CPU, 10-core GPU, MacBook Pro 14) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 21.34 tok/s, estimate 15–25Apple M4 (4P+6E CPU, 10-core GPU, Mac mini 2024) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 24.11 tok/s, estimate 18–30Apple M5 (10-core GPU, MacBook Air 16 GB, macOS 26.6.1) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 31.88 tok/s, estimate 23–39Apple M4 Pro (10P+4E CPU, 20-core GPU) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 50.74 tok/s, estimate 39–67Apple M5 Pro (20-core GPU, MacBook Pro) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 66.33 tok/s, estimate 44–75Apple M3 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 66.31 tok/s, estimate 56–95Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 83.06 tok/s, estimate 74–126Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024) · Llama 2 7B (Q8_0): measured 54.05 tok/s, estimate 42–71Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024) · Llama 2 7B (F16): measured 31.64 tok/s, estimate 23–39Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 119.92 tok/s, estimate 83–141Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB) · Llama 2 7B (Q8_0): measured 72.42 tok/s, estimate 47–79Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB) · Llama 2 7B (F16): measured 37.11 tok/s, estimate 26–44Apple M3 Ultra (24P+8E CPU, 80-core GPU, Mac Studio) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 92.14 tok/s, estimate 85–145Apple M5 Ultra (36-core CPU, 80-core GPU, Mac Studio, 256 GB, macOS 27.0.1) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 179.1 tok/s, estimate 121–206Apple M2 Ultra (16P+8E CPU, 76-core GPU, Mac Studio) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 94.27 tok/s, estimate 84–142Apple M2 Ultra (16P+8E CPU, 76-core GPU, Mac Studio) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 125.21 tok/s, estimate 84–143NVIDIA GeForce RTX 3060 12 GB (Ryzen 7 5700X, Linux, CUDA 13.0) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 76.92 tok/s, estimate 54–85NVIDIA GeForce RTX 5060 Ti 16 GB (single card of a 4-GPU rig, -sm none) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 93.46 tok/s, estimate 66–105NVIDIA GeForce RTX 5070 Ti 16 GB (300 W default, driver 580.105.08) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 182.43 tok/s, estimate 124–196NVIDIA GeForce RTX 5080 16 GB (driver 575.64.03, CUDA 12.9) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 184.68 tok/s, estimate 132–208NVIDIA GeForce RTX 3090 24 GB · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 161.89 tok/s, estimate 129–203NVIDIA GeForce RTX 4090 24 GB (nvidia-dkms 575.64.03, CUDA 12.9) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 188.96 tok/s, estimate 137–217NVIDIA GeForce RTX 5090 32 GB (Zotac Arctic Storm, 450 W) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 300.4 tok/s, estimate 219–346NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 56.74 tok/s, estimate 42–66NVIDIA GeForce RTX 4090 24 GB · Qwen3 30B A3B: measured 207.3 tok/s, estimate 110–217NVIDIA GeForce RTX 4090 24 GB · Qwen3 32B: measured 39.6 tok/s, estimate 30–47NVIDIA GeForce RTX 4070 12 GB · Qwen3 14B: measured 42.5 tok/s, estimate 33–52NVIDIA GeForce RTX 4070 Ti 12 GB · Qwen3 8B: measured 75.8 tok/s, estimate 57–90NVIDIA GeForce RTX 4060 Ti 16 GB · Qwen3 14B: measured 27.4 tok/s, estimate 19–30NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · Qwen2.5-Coder-7B-Instruct (Q8_0): measured 29.43 tok/s, estimate 20–32NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · Qwen3-Coder-30B-A3B-Instruct (Q8_0): measured 61.06 tok/s, estimate 27–53NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · gpt-oss-120b (MXFP4): measured 58.72 tok/s, estimate 33–66NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · Qwen3.5-35B-A3B (unsloth Q8_0): measured 51.33 tok/s, estimate 29–58AMD Radeon RX 7900 XTX 24 GB (Powercolor Red Devil, Windows 11, Adrenalin 26.8.1) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 190.92 tok/s, estimate 132–208AMD Radeon RX 9070 XT 16 GB (Mesa RADV GFX1201, Linux) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 137.11 tok/s, estimate 92–145Intel Arc B580 12 GB (Linux 6.17-rc6, Mesa 25.2.3) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 72 tok/s, estimate 67–106Intel Arc B580 Limited Edition 12 GB (Core Ultra 5 250K Plus, CachyOS 7.0.11, oneAPI 2026.0) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 88.13 tok/s, estimate 67–106Intel Arc B580 Limited Edition 12 GB (Core Ultra 5 250K Plus, CachyOS 7.0.11, oneAPI 2026.0) · Gemma 4 12B (Q4_K_M): measured 41.34 tok/s, estimate 36–57AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000) · Llama 2 7B (llama-2-7b.Q4_0.gguf): measured 51.88 tok/s, estimate 39–62AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000) · Qwen3 30B-A3B (unsloth UD-Q4_K_XL): measured 78 tok/s, estimate 43–85AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000) · gpt-oss-120b (MXFP4): measured 33.7 tok/s, estimate 32–62AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000) · Qwen3 32B (Q8_0): measured 6.4 tok/s, estimate 4–7Apple M4 Pro (20-core GPU, 24 GB) · Llama-3.1-8B-Instruct-4bit (mlx-community): measured 47.6 tok/s, estimate 34–57Apple M5 Max (40-core GPU, 128 GB) · Qwen3-30B-A3B (MLX 4-bit): measured 119.1 tok/s, estimate 64–139Apple M3 Ultra (80-core GPU, 512 GB) · gpt-oss-120b-MLX-8bit: measured 67.8 tok/s, estimate 29–63Apple M5 Max (18-core CPU, 40-core GPU, 14-inch MacBook Pro, 128 GB) · Qwen3.5-122B-A10B (MLX 4-bit): measured 65.9 tok/s, estimate 37–80Apple M5 Max (18-core CPU, 40-core GPU, 14-inch MacBook Pro, 128 GB) · gpt-oss-120b (MXFP4, 8-bit MLX build, article calls it "Q8"): measured 87.9 tok/s, estimate 54–118NVIDIA GeForce RTX 3090 24 GB (used) · gpt-oss 20B: measured 147.5 tok/s, estimate 104–204NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · Qwen3.5-35B-A3B (Q4_K_M): measured 59.98 tok/s, estimate 47–92NVIDIA DGX Spark (GB10, 128 GB LPDDR5x) · gpt-oss-20b (MXFP4): measured 86.23 tok/s, estimate 42–84Apple M4 Max (40-core GPU, MacBook Pro, 64 GB) · gpt-oss-20b (MXFP4): measured 117.83 tok/s, estimate 59–127Our estimate (tokens per second)Measured
AppleNVIDIAAMDIntelShaded: within 20%

Our own runs

Measured by us on a MacBook Pro (M5 Pro, 64 GB) on 10 October 2026, with llama.cpp’s own benchmark tool. These runs were not used to tune the estimate, so they are a fair test of it.

ModelConversationMeasuredOur estimateNotes
Qwen3.8 27B (unsloth UD-Q4_K_XL)51213.4 tok/s9.9–16.8Machine was busy with other work (load average about 470); decode varied only ±0.04 tok/s across 3 runs. llama.cpp d81235049 (11429)
Qwen3.8 27B (unsloth UD-Q4_K_XL)32K10.28 tok/s8.9–15.1Same machine and session. Shows how a long conversation slows writing. llama.cpp d81235049 (11429)

We also tried the MLX version through Ollama, but results swung from 0.9 to 6.4 tok/s while the machine was busy, so we did not publish them. We will re-run on a quiet machine.

All measurements

HardwareModelVersionPromptSpeedRunnerDate
MacBook Pro (M5 Pro, 64 GB)Qwen3.8 27BUD-Q4_K_XL51213.4 tok/sllama.cpp llama-bench (Metal), tg128, flash attention on, 3 runsOurs
MacBook Pro (M5 Pro, 64 GB)Qwen3.8 27BUD-Q4_K_XL32K10.28 tok/sllama.cpp llama-bench (Metal), tg128 after 32,768 tokens, flash attention onOurs
Apple M1 (4P+4E CPU, 8-core GPU)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051214.15 tok/sllama.cpp llama-bench (Metal), tg1282023-12-02
Apple M3 (4P+4E CPU, 10-core GPU, MacBook Pro 14)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051221.34 tok/sllama.cpp llama-bench (Metal), tg1282023-11-27
Apple M4 (4P+6E CPU, 10-core GPU, Mac mini 2024)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051224.11 tok/sllama.cpp llama-bench (Metal), tg1282024-11-10
Apple M5 (10-core GPU, MacBook Air 16 GB, macOS 26.6.1)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051231.88 tok/sllama.cpp llama-bench (Metal), tg1282026-08-30
Apple M4 Pro (10P+4E CPU, 20-core GPU)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051250.74 tok/sllama.cpp llama-bench (Metal), tg1282024-11-08
Apple M5 Pro (20-core GPU, MacBook Pro)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051266.33 tok/sllama.cpp llama-bench (Metal), tg1282026-08-31
Apple M3 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051266.31 tok/sllama.cpp llama-bench (Metal), tg1282023-11-24
Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051283.06 tok/sllama.cpp llama-bench (Metal), tg1282024-11-13
Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024)Llama 2 7B (Q8_0)Q8_051254.05 tok/sllama.cpp llama-bench (Metal), tg1282024-11-13
Apple M4 Max (12P+4E CPU, 40-core GPU, MacBook Pro 16 2024)Llama 2 7B (F16)F1651231.64 tok/sllama.cpp llama-bench (Metal), tg1282024-11-13
Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512119.92 tok/sllama.cpp llama-bench (Metal), tg1282026-08-25
Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB)Llama 2 7B (Q8_0)Q8_051272.42 tok/sllama.cpp llama-bench (Metal), tg1282026-08-25
Apple M5 Max (6S+12P CPU, 40-core GPU, 128 GB)Llama 2 7B (F16)F1651237.11 tok/sllama.cpp llama-bench (Metal), tg1282026-08-25
Apple M3 Ultra (24P+8E CPU, 80-core GPU, Mac Studio)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051292.14 tok/sllama.cpp llama-bench (Metal), tg1282025-03-23
Apple M5 Ultra (36-core CPU, 80-core GPU, Mac Studio, 256 GB, macOS 27.0.1)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512179.1 tok/sllama.cpp llama-bench (Metal), tg1282026-09-30
Apple M2 Ultra (16P+8E CPU, 76-core GPU, Mac Studio)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051294.27 tok/sllama.cpp llama-bench (Metal), tg1282023-11-22
Apple M2 Ultra (16P+8E CPU, 76-core GPU, Mac Studio)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512125.21 tok/sllama.cpp llama-bench (Metal) with flash attention, tg1282026-08-25
NVIDIA GeForce RTX 3060 12 GB (Ryzen 7 5700X, Linux, CUDA 13.0)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051276.92 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-08-21
NVIDIA GeForce RTX 5060 Ti 16 GB (single card of a 4-GPU rig, -sm none)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051293.46 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-08-02
NVIDIA GeForce RTX 5070 Ti 16 GB (300 W default, driver 580.105.08)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512182.43 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-12-07
NVIDIA GeForce RTX 5080 16 GB (driver 575.64.03, CUDA 12.9)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512184.68 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-08-28
NVIDIA GeForce RTX 3090 24 GBLlama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512161.89 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-08-01
NVIDIA GeForce RTX 4090 24 GB (nvidia-dkms 575.64.03, CUDA 12.9)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512188.96 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-08-06
NVIDIA GeForce RTX 5090 32 GB (Zotac Arctic Storm, 450 W)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512300.4 tok/sllama.cpp llama-bench (CUDA), -fa 1, tg1282025-10-23
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051256.74 tok/sllama.cpp llama-bench (CUDA 13.0, driver 580.95.05), -fa 1, tg1282025-10-15
NVIDIA GeForce RTX 4090 24 GBQwen3 30B-A3B-Instruct-2507Q4_K (assumed Q4_K_M)4K207.3 tok/sllama.cpp (Hardware Corner; CUDA; build not stated on page)2026-03
NVIDIA GeForce RTX 4090 24 GBQwen3 32BQ4_K (assumed Q4_K_M)4K39.6 tok/sllama.cpp (Hardware Corner; CUDA; build not stated on page)2026-03
NVIDIA GeForce RTX 4070 12 GBQwen3 14BQ4_K (assumed Q4_K_M)4K42.5 tok/sllama.cpp (Hardware Corner; CUDA; build not stated on page)2026-03
NVIDIA GeForce RTX 4070 Ti 12 GBQwen3 8BQ4_K (assumed Q4_K_M)4K75.8 tok/sllama.cpp (Hardware Corner; CUDA; build not stated on page)2026-03
NVIDIA GeForce RTX 4060 Ti 16 GBQwen3 14BQ4_K (assumed Q4_K_M)4K27.4 tok/sllama.cpp (Hardware Corner; CUDA; build not stated on page)2026-03
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)Qwen2.5-Coder-7B-Instruct (Q8_0)Q8_051229.43 tok/sllama.cpp llama-bench (CUDA), -fa 1 -ub 2048 -mmp 0, pp2048/tg322026-02-05
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)Qwen3-Coder 30B-A3BQ8_051261.06 tok/sllama.cpp llama-bench (CUDA), -fa 1 -ub 2048 -mmp 0, pp2048/tg322026-02-05
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)gpt-oss 120BMXFP451258.72 tok/sllama.cpp llama-bench (CUDA), -fa 1 -ub 2048 -mmp 0, pp2048/tg322026-02-05
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)Qwen3.5 35B-A3BQ8_051251.33 tok/sllama.cpp llama-bench (CUDA), -fa 1 -ub 2048 -mmp 0, pp2048/tg322026-03-10
AMD Radeon RX 7900 XTX 24 GB (Powercolor Red Devil, Windows 11, Adrenalin 26.8.1)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512190.92 tok/sllama.cpp llama-bench (Vulkan, AMD proprietary driver), -fa 1, tg1282026-09-10
AMD Radeon RX 9070 XT 16 GB (Mesa RADV GFX1201, Linux)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_0512137.11 tok/sllama.cpp llama-bench (Vulkan, Mesa RADV), -fa 1, tg1282026-01-24
Intel Arc B580 12 GB (Linux 6.17-rc6, Mesa 25.2.3)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051272 tok/sllama.cpp llama-bench (Vulkan, Mesa open-source driver), -fa 1 -sm none, tg1282025-09-20
Intel Arc B580 Limited Edition 12 GB (Core Ultra 5 250K Plus, CachyOS 7.0.11, oneAPI 2026.0)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051288.13 tok/sllama.cpp llama-bench (SYCL, GGML_SYCL_F16=ON, min core clock pinned 2850 MHz), -fa 1, tg1282026-06-13
Intel Arc B580 Limited Edition 12 GB (Core Ultra 5 250K Plus, CachyOS 7.0.11, oneAPI 2026.0)Gemma 4 12BQ4_K_M51241.34 tok/sllama.cpp llama-bench (SYCL, GGML_SYCL_F16=ON), -fa 0, tg1282026-06-13
AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000)Llama 2 7B (llama-2-7b.Q4_0.gguf)Q4_051251.88 tok/sllama.cpp llama-bench (Vulkan, Mesa RADV), -fa 1 --mmap 0, build 7ad67ba9 (6111)2025-08-27
AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000)Qwen3 30B-A3B-Instruct-2507UD-Q4_K_XL51278 tok/sllama.cpp llama-bench (Vulkan AMDVLK, b=256) - best backend per model, lhl summary2025-08
AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000)gpt-oss 120BMXFP451233.7 tok/sllama.cpp llama-bench (Vulkan AMDVLK, b=256) - best backend per model, lhl summary2025-08
AMD Ryzen AI Max+ 395 "Strix Halo" / Radeon 8060S (Framework Desktop, 128 GB LPDDR5x-8000)Qwen3 32BQ8_05126.4 tok/sllama.cpp llama-bench (Vulkan AMDVLK, fa=1) - best backend per model, lhl summary2025-08
Apple M4 Pro (20-core GPU, 24 GB)Llama 3.1 8BMLX 4-bit4K47.6 tok/soMLX v0.7.0 (MLX), macOS 27.0.12026-10-06
Apple M5 Max (40-core GPU, 128 GB)Qwen3 30B-A3B-Instruct-2507MLX 4-bit4K119.1 tok/soMLX v0.4.4 (MLX), macOS 26.5.12026-06-20
Apple M3 Ultra (80-core GPU, 512 GB)gpt-oss 120BMLX 8-bit1K67.8 tok/soMLX v0.5.7 (MLX), macOS 26.62026-08-06
Apple M5 Max (18-core CPU, 40-core GPU, 14-inch MacBook Pro, 128 GB)Qwen3.5 122B-A10BMLX 4-bit4K65.9 tok/smlx_lm (MLX), version not stated2026-03-11
Apple M5 Max (18-core CPU, 40-core GPU, 14-inch MacBook Pro, 128 GB)gpt-oss 120BMXFP4 (MLX, 8-bit)4K87.9 tok/smlx_lm (MLX), version not stated2026-03-11
Apple M4 Max (12P+4E CPU, 40-core GPU, 128 GB)Llama 3.1 8BQ4_K_M2K52.9 tok/sLocalScore (Llamafile-based harness), average across its 9 prompt/generation tests
NVIDIA GeForce RTX 5060 Ti (reported as 15 GB)Llama 3.1 8BQ4_K_M2K59 tok/sLocalScore (Llamafile-based harness), average across its 9 prompt/generation tests
NVIDIA GeForce RTX 5090 32 GBQwen3.5 35B-A3BMXFP4256K97.3 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 5090 32 GBGemma 4 31BQ4_K128K43.4 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 3090 24 GB (used)gpt-oss 20BMXFP44K147.5 tok/sllama.cpp CUDA, -fa 1 (HC row label)2026-03
NVIDIA GeForce RTX 3090 24 GB (used)Qwen3.5 35B-A3BMXFP4128K79.4 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 3090 24 GB (used)Gemma 4 26B-A4BQ4_K256K64.4 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 3090 24 GB (used)Gemma 4 31BQ4_K32K31.4 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 5060 Ti 16 GBgpt-oss 20BMXFP4128K43.8 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA GeForce RTX 5060 Ti 16 GBQwen3 14BQ4_K32K25.9 tok/sllama.cpp CUDA, FA on (per calibration.js)2026-03
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)Qwen3.5 35B-A3BQ4_K_M51259.98 tok/sllama.cpp llama-bench (CUDA), pp2048/tg322026-03-30
NVIDIA DGX Spark (GB10, 128 GB LPDDR5x)gpt-oss 20BMXFP451286.23 tok/sllama.cpp llama-bench (CUDA), -fa 1 -ub 20482025-11-16
Apple M4 Max (40-core GPU, MacBook Pro, 64 GB)gpt-oss 20BMXFP4512117.83 tok/sllama.cpp llama-bench (Metal), -fa 1 -ub 2048, 1 thread2025-11-16

Speed = text generation (decode) in tokens per second. “Prompt” is how much text was already in the conversation. Click a date for the source.

Corrections

10 October 2026 — two old rows were the wrong machine

Our previous benchmark page listed two DGX Spark results (Qwen3-Coder-30B at 44 tok/s and gpt-oss-120b at 42 tok/s). The source comment was about NVIDIA’s Jetson AGX Thor, not the DGX Spark. The real DGX Spark numbers from the llama.cpp project are 61 and 59 tok/s. We removed the wrong rows.