Best local LLMs for 2x RTX 3090 (48GB total)
2x GeForce RTX 3090. Memory-fit math with KV cache, speeds labelled by how they were obtained, and commands you can paste.
Best for Coding · 16k context
| Model | Quant | Fit | Memory | Speed (generation) |
|---|---|---|---|---|
| Gemma 4 31B | Q8_0 | fits fully | 35.3 GB | ~19 tok/s estimated |
| Qwen3.6 27B | Q8_0 | fits fully | 29.8 GB | ~22 tok/s estimated |
| Qwen3-Coder 30B-A3B | Q8_0 | fits fully | 34.1 GB | ~143 tok/s estimated |
| Qwen3.6 35B-A3B | Q8_0 | fits fully | 37.3 GB | ~163 tok/s estimated |
| Gemma 4 26B-A4B | Q8_0 | fits fully | 27.9 GB | ~125 tok/s estimated |
llama-server -hf unsloth/gemma-4-31B-it-GGUF:Q8_0 -c 16384 -fa on --jinja -ngl 99
OLLAMA_CONTEXT_LENGTH=16384 ollama run hf.co/unsloth/gemma-4-31B-it-GGUF:Q8_0
Best for Chat / general · 16k context
| Model | Quant | Fit | Memory | Speed (generation) |
|---|---|---|---|---|
| Gemma 4 31B | Q8_0 | fits fully | 35.3 GB | ~19 tok/s estimated |
| Qwen3.6 27B | Q8_0 | fits fully | 29.8 GB | ~22 tok/s estimated |
| Mistral Small 3.2 24B | Q8_0 | fits fully | 27.7 GB | ~26 tok/s estimated |
| Gemma 4 12B | Q8_0 | fits fully | 13.7 GB | ~49 tok/s estimated |
| Qwen3.6 35B-A3B | Q8_0 | fits fully | 37.3 GB | ~163 tok/s estimated |
llama-server -hf unsloth/gemma-4-31B-it-GGUF:Q8_0 -c 16384 -fa on --jinja -ngl 99
OLLAMA_CONTEXT_LENGTH=16384 ollama run hf.co/unsloth/gemma-4-31B-it-GGUF:Q8_0
Best for Vision · 16k context
| Model | Quant | Fit | Memory | Speed (generation) |
|---|---|---|---|---|
| Gemma 4 31B | Q8_0 | fits fully | 35.3 GB | ~19 tok/s estimated |
| Qwen3.6 27B | Q8_0 | fits fully | 29.8 GB | ~22 tok/s estimated |
| Mistral Small 3.2 24B | Q8_0 | fits fully | 27.7 GB | ~26 tok/s estimated |
| Gemma 4 12B | Q8_0 | fits fully | 13.7 GB | ~49 tok/s estimated |
| Qwen3.6 35B-A3B | Q8_0 | fits fully | 37.3 GB | ~163 tok/s estimated |
llama-server -hf unsloth/gemma-4-31B-it-GGUF:Q8_0 -c 16384 -fa on --jinja -ngl 99
OLLAMA_CONTEXT_LENGTH=16384 ollama run hf.co/unsloth/gemma-4-31B-it-GGUF:Q8_0
All 13 models that fit, fastest first · 16k context
Click a column header to sort. 0 of 13 speeds here are measured or scaled from measured; the rest are bandwidth estimates. Filter by use case, speed source, fit, license and more in the interactive advisor →
| Model | Params | Quant | Fit | Memory | Tok/s | Source |
|---|---|---|---|---|---|---|
| gpt-oss 20B | 20.91B MoE | Q8_0 | fits fully | 12.5 GB | ~241 | estimated |
| Qwen3.6 35B-A3B | 35.95B MoE | Q8_0 | fits fully | 37.3 GB | ~163 | estimated |
| Qwen3-Coder 30B-A3B | 30.53B MoE | Q8_0 | fits fully | 34.1 GB | ~143 | estimated |
| Qwen3.5 4B | 4.66B | Q8_0 | fits fully | 5.1 GB | ~143 | estimated |
| Gemma 4 26B-A4B | 25.81B MoE | Q8_0 | fits fully | 27.9 GB | ~125 | estimated |
| Qwen3-VL 8B | 8.77B | Q8_0 | fits fully | 11.1 GB | ~74 | estimated |
| Qwen3.5 9B | 9.65B | Q8_0 | fits fully | 10.1 GB | ~67 | estimated |
| gpt-oss 120B | 116.83B MoE | Q4_K_M | MoE offload | 63.4 GB | ~55 | estimated |
| Gemma 4 12B | 11.96B | Q8_0 | fits fully | 13.7 GB | ~49 | estimated |
| Mistral Small 3.2 24B | 24.01B | Q8_0 | fits fully | 27.7 GB | ~26 | estimated |
| Qwen3.6 27B | 27.78B | Q8_0 | fits fully | 29.8 GB | ~22 | estimated |
| Gemma 4 31B | 31.27B | Q8_0 | fits fully | 35.3 GB | ~19 | estimated |
| GLM-4.5-Air | 110.47B MoE | Q4_K_M | MoE offload | 76.1 GB | ~14 | estimated |
Long context on this hardware · up to 1M tokens
Largest context whose KV cache still fits next to the weights (same placement as the 16k result, KV types f16 / q8_0 / q4_0). Models are capped at their verified maximum; extended means beyond the native maximum using YaRN, only listed where the model card documents it. Long context needs flash attention (-fa on, already in the commands) and a lot of memory; a quantized KV cache saves memory but can cost accuracy. Speed at depth is an estimate (penalty fitted to measured depth runs up to 128k).
Try it in the advisor: 128k · 256k · 512k · 1M
| Model | Native max | Max ctx f16 | Max ctx q8_0 | Max ctx q4_0 | Est. tok/s at max f16 ctx |
|---|---|---|---|---|---|
| Qwen3.5 4B Q8_0 | 256k | 1M extended | 1M extended | 1M extended | ~23 estimated |
| Qwen3.5 9B Q8_0 | 256k | 1M extended | 1M extended | 1M extended | ~19 estimated |
| Qwen3.6 35B-A3B Q8_0 | 256k | 256k | 512k extended | 1M extended | ~72 estimated |
| Gemma 4 26B-A4B Q8_0 | 256k | 256k | 256k | 256k | ~63 estimated |
| Gemma 4 12B Q8_0 | 256k | 256k | 256k | 256k | ~39 estimated |
| Qwen3.6 27B Q8_0 | 256k | 256k | 256k | 512k extended | ~16 estimated |
| gpt-oss 20B Q8_0 | 128k | 128k | 128k | 128k | ~114 estimated |
| Qwen3-Coder 30B-A3B Q8_0 | 256k | 128k | 128k | 256k | ~39 estimated |
| Qwen3-VL 8B Q8_0 | 256k | 128k | 256k | 512k extended | ~28 estimated |
| gpt-oss 120B Q4_K_M | 128k | 128k | 128k | 128k | ~24 estimated |
| Gemma 4 31B Q8_0 | 256k | 128k | 256k | 256k | ~15 estimated |
| GLM-4.5-Air Q4_K_M | 128k | 128k | 128k | 128k | ~4 estimated |
| Mistral Small 3.2 24B Q8_0 | 128k | 64k | 128k | 128k | ~20 estimated |
Open the interactive advisor with this hardware →
Speeds marked measured are medians of real runs (short-context generation) from these sources; scaled from measured means a measurement of a same-size or same-model-different-quant run, scaled by bytes read; estimated comes from memory bandwidth (spec source: https://www.techpowerup.com/gpu-specs/geforce-rtx-3090.c3622) × an efficiency factor of 0.68 calibrated to measured runs on this hardware. 20 measured data points on file for this hardware · submit your benchmark. System RAM here is an example (64 GB, ddr5-5600). Model data last verified 2026-10-14. Ranking = fits and fast enough first, then larger; not a quality benchmark.
Page generated 2026-10-16 by tools/generate_pages.js