Benchmarks
Local LLM speed results across models, backends, hardware, and power profiles. Decode tok/s is the headline metric; latency, raw engine runs, and workload context stay visible in their own views.
content/benchmarks/runs/Advanced filters
Power rows are isolated here so normal model rankings are not swamped by intermediate cap sweeps and driver reruns.
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | chat | 147.6 | 124ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | codegen | 147.4 | 159ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | rag | 147.3 | 398ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | chat | 147.3 | 69ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | agent | 147.0 | 234ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | rag | 146.9 | 356ms |
| 7B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | codegen | 146.8 | 47ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | codegen | 146.7 | 174ms |
| 7B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | rag | 146.4 | 108ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 210 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-210w | rag | 146.3 | 344ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | codegen | 146.2 | 98ms |
| 35B-A3Bthink | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | agent | 146.0 | 222ms |
| 7B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | agent | 145.6 | 71ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | rag | 145.3 | 180ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | codegen | 145.1 | 96ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | rag | 144.6 | 196ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | agent | 144.4 | 148ms |
| E4B-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | agent | 143.9 | 138ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 595 | llama.cpp cuda-3e12fbd (cuda) | baseline-pl-200w-595-r2 | chat | 142.9 | 41ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-200w | chat | 142.9 | 45ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 210 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-210w | codegen | 142.4 | 129ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 210 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-210w | agent | 141.7 | 237ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 595 | llama.cpp cuda-3e12fbd (cuda) | baseline-pl-200w-595-r2 | rag | 138.1 | 372ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-200w | rag | 133.5 | 340ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-200w | agent | 128.7 | 249ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 595 | llama.cpp cuda-3e12fbd (cuda) | baseline-pl-200w-595-r2 | agent | 128.4 | 246ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-200w | codegen | 127.9 | 127ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | chat | 127.0 | 42ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 190 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-190w | chat | 127.0 | 43ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 200 Wdrv 595 | llama.cpp cuda-3e12fbd (cuda) | baseline-pl-200w-595-r2 | codegen | 126.7 | 125ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | codegen | 124.8 | 121ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | rag | 124.4 | 223ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | chat | 124.1 | 45ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | agent | 123.1 | 189ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | codegen | 122.5 | 110ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | rag | 122.1 | 244ms |
| 8b | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 350 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-350w | agent | 120.7 | 173ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 190 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-190w | rag | 119.6 | 383ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 190 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-190w | agent | 113.9 | 248ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 190 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-190w | codegen | 112.9 | 122ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 180 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-180w | chat | 110.9 | 44ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 180 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-180w | rag | 104.2 | 370ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 180 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-180w | codegen | 100.1 | 124ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 180 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-180w | agent | 100.0 | 300ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 170 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-170w | chat | 96.8 | 45ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 170 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-170w | rag | 89.8 | 370ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 170 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-170w | agent | 87.5 | 250ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 170 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-170w | codegen | 85.2 | 127ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | chat | 82.5 | 32ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | chat | 82.4 | 33ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | chat | 82.3 | 34ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | chat | 82.3 | 33ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | codegen | 81.6 | 44ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | rag | 81.6 | 34ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | codegen | 81.6 | 44ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | rag | 81.5 | 36ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | rag | 81.5 | 35ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | rag | 81.5 | 36ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | codegen | 81.4 | 44ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | codegen | 81.4 | 44ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | agent | 81.0 | 31ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | agent | 81.0 | 30ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-350w | agent | 80.8 | 29ms |
| 14B-Instruct | AWQ | GeForce RTX 3090 · 24 GiBcap 420 Wdrv 590 | vLLM 0.21.0 (cuda) | baseline-pl-450w | agent | 80.8 | 29ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 160 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-160w | chat | 79.8 | 48ms |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 595 | llama.cpp opt-build (cuda) | pl-450w | mixed_2048_768 | 78.9 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 595 | llama.cpp opt-build (cuda) | pl-450w | mixed_64_1024 | 78.4 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiB450 W maxdrv 595 | llama.cpp opt-build (cuda) | pl-450w | mixed_1024_1024 | 78.0 | — |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 160 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-160w | rag | 75.4 | 374ms |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 300 Wdrv 595 | llama.cpp opt-build (cuda) | pl-300w | mixed_64_1024 | 74.2 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 300 Wdrv 595 | llama.cpp opt-build (cuda) | pl-300w | mixed_2048_768 | 74.0 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 300 Wdrv 595 | llama.cpp opt-build (cuda) | pl-300w | mixed_1024_1024 | 73.7 | — |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 160 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-160w | agent | 71.6 | 293ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 160 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-160w | codegen | 70.4 | 123ms |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiB300 W maxdrv 595 | llama.cpp b9174 (cuda) | pl-300w | mixed_2048_768 | 64.6 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 250 Wdrv 595 | llama.cpp b9174 (cuda) | pl-250w | mixed_2048_768 | 64.6 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 200 Wdrv 595 | llama.cpp b9174 (cuda) | pl-200w | mixed_2048_768 | 64.4 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 250 Wdrv 595 | llama.cpp b9174 (cuda) | pl-250w | mixed_64_1024 | 64.4 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiB300 W maxdrv 595 | llama.cpp b9174 (cuda) | pl-300w | mixed_64_1024 | 64.4 | — |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 150 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-150w | chat | 64.4 | 55ms |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiB300 W maxdrv 595 | llama.cpp b9174 (cuda) | pl-300w | mixed_1024_1024 | 64.4 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 250 Wdrv 595 | llama.cpp b9174 (cuda) | pl-250w | mixed_1024_1024 | 64.4 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 200 Wdrv 595 | llama.cpp b9174 (cuda) | pl-200w | mixed_64_1024 | 64.3 | — |
| 14B-Instruct | Q4_K_M | GeForce RTX 5070 · 12 GiBcap 200 Wdrv 595 | llama.cpp b9174 (cuda) | pl-200w | mixed_1024_1024 | 64.2 | — |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 150 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-150w | rag | 58.2 | 448ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 150 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-150w | agent | 58.2 | 287ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 150 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-150w | codegen | 58.1 | 131ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 140 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-140w | rag | 52.6 | 429ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 140 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-140w | chat | 50.9 | 68ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-3-pl-200w | codegen | 50.6 | 380ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-3-pl-200w | chat | 50.5 | 265ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-3-pl-200w | agent | 49.9 | 623ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-2-pl-200w | codegen | 48.7 | 390ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-2-pl-200w | chat | 47.4 | 275ms |
| 27B-MTPthink | Q8_0 | 2× GeForce RTX 3090 · 24 GiB eachcap 200 W × 2drv 590 | llama.cpp 4f13cb7-mtp (cuda) | mtp-2-pl-200w | agent | 47.2 | 646ms |
| 27Bthink | Q2_K | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | chat | 47.2 | 240ms |
| 27Bthink | Q2_K | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | rag | 46.5 | 881ms |
| 4b-it | Q4_K_M | GeForce RTX 3090 · 24 GiBcap 140 Wdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-140w | codegen | 46.3 | 131ms |
| 27Bthink | Q2_K | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | codegen | 45.9 | 321ms |
| 27Bthink | Q2_K | GeForce RTX 3090 · 24 GiB450 W maxdrv 590 | llama.cpp cuda-4f13cb7 (cuda) | baseline-pl-450w | agent | 45.6 | 509ms |
Use these rows for GPU-to-GPU comparisons when the model, quant, backend, driver family, power policy, and benchmark shape match closely.
Use these rows to compare a similar software stack. They are useful, but backend, server path, driver, cache, or power settings may still influence the number.
Treat these as real workload measurements, not pure hardware rankings. They include prompt mix, API/server overhead, cache behavior, and local software details.