How fast will it run on your card?
Tokens per second for the models that fit the most common cards: an estimate scaled from each card's own measured run where one exists, and the hard upper bound memory bandwidth sets.
Rows are the models this site recommends for each card: the largest that fits comfortably, and the largest that leaves a third of the card free, for chat, code and image tasks. Every figure is the VRAM calculator's own at 4K context and batch 1, and each row opens there with the same settings.
Estimate — this card's measured llama.cpp generation speed on Llama 2 7B (community scoreboard), scaled by the model's weight bytes. The range is how far real runs landed from it when checked. Only dense GGUF models of 7–33B get one.
Upper bound — memory bandwidth divided by the bytes read per token; nothing runs faster. For MoE models only the active experts are read, so the bound is far higher and loose: the two MoE models measured here reached about a quarter of it.
RTX 5060 Ti 16G
16 GB · 448 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Mistral Small 24B Instruct | AWQ INT4 | 13.2 GB | — | ≤ 39 | Calculator |
| Devstral Small 1.1 24B | AWQ INT4 | 13.0 GB | — | ≤ 40 | Calculator |
| Magistral Small 1.2 24B | AWQ INT4 | 13.0 GB | — | ≤ 40 | Calculator |
| Falcon 3 10B Instruct | Q4_K_M | 7.3 GB | ~55 (55–72) | ≤ 75 | Calculator |
| Gemma 4 E4B IT | Q8_0 | 8.7 GB | ~42 (42–56) | ≤ 58 | Calculator |
RTX 4060 Ti 8G
8 GB · 288 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Falcon 3 10B Instruct | GPTQ INT4 | 6.1 GB | — | ≤ 58 | Calculator |
| Qwen3.5 9B | Q4_K_M | 6.6 GB | ~40 (39–49) | ≤ 49 | Calculator |
| Qwen3 4B Instruct | Q6_K | 4.0 GB | — | ≤ 92 | Calculator |
| Qwen3.5 2B | Q8_0 | 2.2 GB | — | ≤ 145 | Calculator |
RTX 4060 Ti 16G
16 GB · 288 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Mistral Small 24B Instruct | AWQ INT4 | 13.2 GB | — | ≤ 25 | Calculator |
| Devstral Small 1.1 24B | AWQ INT4 | 13.0 GB | — | ≤ 26 | Calculator |
| Magistral Small 1.2 24B | AWQ INT4 | 13.0 GB | — | ≤ 26 | Calculator |
| Falcon 3 10B Instruct | Q4_K_M | 7.3 GB | ~39 (38–48) | ≤ 48 | Calculator |
| Gemma 4 E4B IT | Q8_0 | 8.7 GB | ~30 (29–37) | ≤ 37 | Calculator |
RTX 5070
12 GB · 672 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| DeepSeek-V2-Lite Chat | Q4_K_M | 10.1 GB | — | ≤ 486 · MoE | Calculator |
| Gemma 3 12B IT | Q5_K_M | 9.8 GB | ~56 (56–74) | ≤ 82 | Calculator |
| Granite 3.1 8B Instruct | Q4_K_M | 5.9 GB | ~98 (97–129) | ≤ 142 | Calculator |
| Gemma 4 E2B IT | Q8_0 | 5.2 GB | — | ≤ 143 | Calculator |
RTX 3090
24 GB · 936 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Recursive Flint 40B-A2.5B | Q3_K_M | 20.6 GB | — | ≤ 804 · MoE | Calculator |
| MiniCPM-V 4.7 35B-A3B | Q4_K_S | 20.9 GB | — | ≤ 572 · MoE | Calculator |
| ERNIE 4.5 21B-A3B | Q4_K_M | 14.2 GB | — | ≤ 537 · MoE | Calculator |
| GPT-OSS 20B | MXFP4 | 12.8 GB | — | ≤ 473 · MoE | Calculator |
| Gemma 3 12B IT | Q5_K_M | 9.8 GB | ~70 (69–91) | ≤ 114 | Calculator |
RTX 4090
24 GB · 1008 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Recursive Flint 40B-A2.5B | Q3_K_M | 20.6 GB | — | ≤ 866 · MoE | Calculator |
| MiniCPM-V 4.7 35B-A3B | Q4_K_S | 20.9 GB | — | ≤ 616 · MoE | Calculator |
| ERNIE 4.5 21B-A3B | Q4_K_M | 14.2 GB | — | ≤ 578 · MoE | Calculator |
| GPT-OSS 20B | MXFP4 | 12.8 GB | — | ≤ 509 · MoE | Calculator |
| Gemma 3 12B IT | Q5_K_M | 9.8 GB | ~82 (81–108) | ≤ 122 | Calculator |
RTX 5090
32 GB · 1792 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Nemotron 3.5 Bolt 74B-A9B | IQ2_XXS | 23.1 GB | — | ≤ 705 · MoE | Calculator |
| GLM-4.7-Flash | Q4_K_M | 19.2 GB | — | ≤ 1037 · MoE | Calculator |
| Gemma 3 27B IT | Q4_K_M | 18.4 GB | ~67 (66–88) | ≤ 114 | Calculator |
Radeon RX 9070 XT
16 GB · 640 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Mistral Small 24B Instruct | AWQ INT4 | 13.2 GB | — | ≤ 56 | Calculator |
| Devstral Small 1.1 24B | AWQ INT4 | 13.0 GB | — | ≤ 57 | Calculator |
| Magistral Small 1.2 24B | AWQ INT4 | 13.0 GB | — | ≤ 57 | Calculator |
| Falcon 3 10B Instruct | Q4_K_M | 7.3 GB | ~61 (61–80) | ≤ 107 | Calculator |
| Gemma 4 E4B IT | Q8_0 | 8.7 GB | ~47 (47–62) | ≤ 82 | Calculator |
Mac M4 Pro 24G
24 GB · 273 GB/s
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Qwen3-VL 30B-A3B Instruct | Q3_K_M | 15.8 GB | — | ≤ 198 · MoE | Calculator |
| North Mini Code 1.0 30B-A3B | Q3_K_M | 15.3 GB | — | ≤ 205 · MoE | Calculator |
| DeepSeek-V2-Lite Chat | Q4_K_M | 10.1 GB | — | ≤ 198 · MoE | Calculator |
| Gemma 3 12B IT | Q5_K_M | 9.8 GB | ~22 (22–29) | ≤ 33 | Calculator |
32 GB RAM (CPU)
32 GB
| Model | Level | At 4K | Estimate (tok/s) | Upper bound (tok/s) | |
|---|---|---|---|---|---|
| Nemotron 3.5 Bolt 74B-A9B | IQ2_XXS | 23.1 GB | — | no bandwidth figure | Calculator |
| GLM-4.7-Flash | Q4_K_M | 19.2 GB | — | no bandwidth figure | Calculator |
| Gemma 3 27B IT | Q4_K_M | 18.4 GB | — | no bandwidth figure | Calculator |
Another card? Each of the 78 cards in the index has its own page with every model that fits: all GPU pages
Why memory bandwidth sets the limit
To generate one token, a dense model reads every one of its weights from memory once. So tokens per second can never exceed `bandwidth ÷ weight bytes`: an RTX 4090 moves about 1 TB/s, and a model whose weights take 10 GB cannot pass about 100 tokens per second on it, however fast the compute is. That is why a smaller quant level is faster as well as smaller, and why a card with more bandwidth but the same memory runs the same model faster. A mixture-of-experts model reads only the experts each token is routed to, so its bound is computed over the active parameters and is much higher.
Why the estimate sits below the bound
No runtime reaches its card's peak bandwidth: kernels, drivers and per-token overhead all cost something, and how much differs by card. So the estimate starts from what this card actually did — its tg128 result for Llama 2 7B Q4_0 on llama.cpp's community scoreboards — and scales it by how many more or fewer bytes the chosen model reads per token. Checked against the dense GGUF runs in this site's benchmark table, real speeds landed between 0.99× and 1.31× of the estimate, which is the range printed beside it. Outside dense 7–33B GGUF models that check does not apply, so those rows show the bound alone.
Common questions
- Why do some rows show only an upper bound?
- The estimate is calibrated on llama.cpp runs of GGUF files from dense 7–33B models. A row whose recommended level is AWQ or GPTQ (run by vLLM), a mixture-of-experts model, or a model outside that size range has not been checked against a real run, so it gets the bandwidth bound only — a printed guess would look as reliable as the checked figures and would not be.
- Does a long prompt or a long conversation slow it down?
- Yes. These figures are for generating with a nearly empty context, which is what
tg128measures. As the context grows each token also reads more of the KV cache, so generation slows, and a long prompt adds a wait before the first token appears. The VRAM calculator shows that wait separately, from each card's measured prompt-processing speed. - Do two cards make it twice as fast?
- Not with the default setup. llama.cpp and Ollama split a model across cards by layers, and the cards take turns on every token, so the speed bound stays that of one card; a second card buys capacity — a bigger model or a longer context — not speed. Tensor-parallel serving in vLLM can scale speed, at the cost of a fast link between the cards.