The RTX 3070 Laptop has 8 GB of graphics memory, read at 448 GB/s. In a laptop with 32 GB of DDR5-5600, 29 of the 88 open models here run entirely on the card, 29 of them writing faster than you read; the most capable it runs well is Qwen3.5 9B at Q4_K_M, 31–49 tokens/s. 33 more run with part of the model in system memory, more slowly.
Every figure is for an 8,192-token conversation (about 6,000 words), at the best compression that fits. Try it in the calculator with your own memory, conversation length and compression, or a second card. For image and video models, see Stable Diffusion, FLUX and Wan on the RTX 3070 Laptop.
The fastest way to run a model: all of it in graphics memory. Most people read at 5 to 8 tokens a second, so anything above 10 feels quick.
| Model | Compression | Writes | Needs |
|---|---|---|---|
| Qwen3.5 9B | Q4_K_M | 31–49 tokens/s | 6.1 GB |
| Ornith 1.5 9B | Q4_K_M | 31–49 tokens/s | 6.1 GB |
| Ministral 3 8B | Q4_K_M | 31–49 tokens/s | 6.5 GB |
| Granite 4.2 8B | Q4_K_M | 31–49 tokens/s | 6.7 GB |
| Qwen3 8B | Q4_K_M | 33–53 tokens/s | 6.2 GB |
| DeepSeek R1 0528 Qwen3 8B | Q4_K_M | 33–53 tokens/s | 6.2 GB |
| Llama 3.1 8B | Q5_K_M | 30–48 tokens/s | 6.8 GB |
| Gemma 4 E4B | Q6_K | 48–77 tokens/s | 6.7 GB |
| Qwen2.5 7B | Q6_K | 29–46 tokens/s | 6.7 GB |
| Mistral 7B v0.3 | Q5_K_M | 33–52 tokens/s | 6.2 GB |
| Gemma 4 E2B | Q8_0 | 72–115 tokens/s | 5.5 GB |
| Qwen3.5 4B | Q8_0 | 36–58 tokens/s | 5.2 GB |
| Gemma 3 4B | Q8_0 | 38–62 tokens/s | 4.9 GB |
| Qwen3 4B 2507 | Q8_0 | 38–60 tokens/s | 5.5 GB |
| Ministral 3 3B | Q8_0 | 40–65 tokens/s | 5.0 GB |
| Phi-4-mini | Q8_0 | 40–64 tokens/s | 5.2 GB |
| Granite 4.2 3B | Q8_0 | 43–69 tokens/s | 4.6 GB |
| Llama 3.2 3B | Q8_0 | 47–75 tokens/s | 4.4 GB |
| SmolLM3 3B | Q8_0 | 51–81 tokens/s | 3.9 GB |
| Qwen3.5 2B | Q8_0 | 72–115 tokens/s | 2.5 GB |
| Qwen3 1.7B | Q8_0 | 68–110 tokens/s | 3.1 GB |
| LFM3 1.7B | Q8_0 | 93–150 tokens/s | 1.9 GB |
| Llama 3.2 1B | Q8_0 | 120–190 tokens/s | 1.6 GB |
| Gemma 3 1B | Q8_0 | 150–245 tokens/s | 1.1 GB |
| Qwen3.5 0.8B | Q8_0 | 170–270 tokens/s | 1.0 GB |
| Qwen3 0.6B | Q8_0 | 135–215 tokens/s | 1.7 GB |
| SmolLM2 360M | Q8_0 | 270–430 tokens/s | 0.7 GB |
| LFM2.5 350M | Q8_0 | 330–530 tokens/s | 0.5 GB |
| Gemma 3 270M | Q8_0 | 415–660 tokens/s | 0.3 GB |
In a laptop with 32 GB of DDR5-5600, these fit with part of the model in system memory. The processor reads that part several times more slowly, so they write more slowly the more of them is off the card.
| Model | On the card | Writes | Needs |
|---|---|---|---|
| Mistral Medium 3.5 128B | 24% | 1.8–2.9 tokens/s | 28 GB |
| Qwen3.5 122B-A10B | 27% | 22–36 tokens/s | 25 GB |
| Nemotron 3.5 Super 120B-A12B | 27% | 20–31 tokens/s | 25 GB |
| Mistral Small 4 119B | 28% | 33–53 tokens/s | 24 GB |
| GLM-4.5 Air 106B-A12B | 21% | 11–18 tokens/s | 32 GB |
| Llama 4 Scout 109B-A17B | 22% | 8.6–14 tokens/s | 31 GB |
| Qwen3 Coder Next 80B-A3B | 23% | 35–56 tokens/s | 30 GB |
| Nemotron 3.5 Bolt 74B-A9B | 24% | 14–22 tokens/s | 28 GB |
| Qwen2.5 72B | 23% | 1.7–2.7 tokens/s | 30 GB |
| Llama 3.3 70B | 23% | 1.8–2.8 tokens/s | 29 GB |
| Flint 40B-A2.5B | 28% | 28–45 tokens/s | 24 GB |
| Qwen3.6 35B-A3B | 31% | 26–41 tokens/s | 22 GB |
| Qwen3 32B | 31% | 2.5–4.1 tokens/s | 22 GB |
| Nemotron 3.5 Lightning 30B-A3B | 35% | 27–44 tokens/s | 19 GB |
| Gemma 4 31B | 34% | 2.7–4.4 tokens/s | 20 GB |
| GLM-4.7 Flash | 35% | 25–40 tokens/s | 19 GB |
| Qwen3 30B-A3B 2507 | 35% | 21–34 tokens/s | 19 GB |
| Qwen3 Coder 30B-A3B | 35% | 21–34 tokens/s | 19 GB |
| Muse Glimmer 30B | 37% | 3.1–5.0 tokens/s | 18 GB |
| Granite 4.2 30B | 34% | 2.9–4.7 tokens/s | 20 GB |
| Qwen3.6 27B | 39% | 3.4–5.4 tokens/s | 17 GB |
| Qwen3.8 27B | 39% | 3.4–5.4 tokens/s | 17 GB |
| Gemma 3 27B | 38% | 3.3–5.3 tokens/s | 18 GB |
| Gemma 4 26B-A4B | 43% | 22–35 tokens/s | 16 GB |
| Mistral Small 3.2 24B | 66% | 8.6–14 tokens/s | 10 GB |
| Devstral Small 2 24B | 66% | 8.6–14 tokens/s | 10 GB |
| LFM2.5 24B-A2B | 46% | 35–57 tokens/s | 15 GB |
| gpt-oss 20B | 55% | 29–47 tokens/s | 12 GB |
| Qwen3 14B | 66% | 8.7–14 tokens/s | 10 GB |
| Phi-4 | 64% | 8.3–13 tokens/s | 11 GB |
| Ministral 3 14B | 69% | 9.7–15 tokens/s | 9.8 GB |
| Gemma 3 12B | 82% | 14–23 tokens/s | 8.3 GB |
| Gemma 4 12B | 89% | 17–28 tokens/s | 7.7 GB |
The other 26 need more memory than a laptop with 32 GB of DDR5-5600 has; the calculator shows what more memory, or a second card, would add.
Tokens per second writing Llama 3.1 8B at 4 bits, which every 8 GB card holds, and the most capable model each runs well on its own. Every card ranked.
| Graphics | Memory | Llama 3.1 8B | Most capable it runs well |
|---|---|---|---|
| RTX 4080 Laptop | 12 GB | 61 | Qwen3 14B |
| RTX 5070 Laptop | 8 GB | 54 | Qwen3.5 9B |
| RTX 5060 Laptop | 8 GB | 52 | Qwen3.5 9B |
| RTX 3070 Laptop | 8 GB | 45 | Qwen3.5 9B |
| RTX 4060 Laptop | 8 GB | 42 | Qwen3.5 9B |
| RTX 4070 Laptop | 8 GB | 41 | Qwen3.5 9B |
| Arc A770M | 16 GB | 37 | Qwen3 14B |
Estimated tokens per second; a real figure is usually within a quarter either way. * Part of it in system memory. {CAPABLE_NOTE}
Writing an answer is limited by memory rather than arithmetic: for every word-piece (token) a model writes, the computer reads every weight that token uses once. So the speed is how fast the memory holding the model can be read, divided by how much is read for each token: the model’s weights at the chosen compression, plus the conversation so far. How much of its memory speed each graphics card reaches is measured, not assumed: it comes from the card’s own result in llama.cpp’s benchmark, which LM Studio, Ollama and Jan are built on. A model that does not fit in the graphics card’s memory spills into system memory, five to fifteen times slower, and one that does not fit in memory at all can be read from the drive as it runs, slower again; the estimate counts each part at its own speed, and a processor with few threads cannot use all of fast memory. Graphics built into a processor use system memory, at its speed. Reading a prompt is limited by arithmetic, so it follows the measured prompt speed.
A model that is slower than it should be is nearly always partly on the processor rather than all on the graphics card, which is several times slower — and Ollama does that without a word when something else holds the card’s memory. Bottleneck’s free app checks a model run with Ollama, LM Studio, llama.cpp, KoboldCpp or Jan: where it really runs, how fast it writes, and what your PC should manage with it. Nothing leaves your PC. Or check and fix it by hand.
It reads your parts too: the graphics card and how much memory it really has free, how much system memory is installed, the speed it runs at and in how many channels. Memory left in one channel, or below its rated speed, halves how fast a model runs from it, and Bottleneck says so. Its AI models screen then lists what runs on this PC.
The free version shows where a model runs and how fast, with no time limit and no account. Pro, $9 once, explains why it is slower than it could be and how to fix it. Compare the versions