What LLMs can two RTX 5090 GPUs run?
Two RTX 5090 GPUs (64 GB in all) run 43 of the 69 open models tracked here at Q4_K_M with 8K context; the largest is AliceAI Foundation 80B-A3B (81.3B parameters, 51.6 GB). They read memory at 3,584 GB/s in total. 4 more fit at a lower precision. Each fit leaves at least 0.5 GB free on 2× RTX 5090 (why a card does not give a model all its memory). The speeds assume tensor parallelism, as in vLLM or SGLang; llama.cpp splits layers across cards by default and then writes at about the speed of one card. How the model is divided between the cards, and what each one holds.
Models that fit on 2× RTX 5090
The most precise weights that still fit with 8K tokens of context and one request, the memory that takes, the longest context at that precision and the writing speed. Bigger models come first. Memory is for the whole group: weights, cache and 10% split across the 2 cards, plus 0.5 GB of runtime on each card (1 GB in all). gpt-oss-20b (15.3 GB, 169–364 tokens/s on 2× RTX 5090) is listed at MXFP4 only, as published.
| Model | Best precision | Memory | Longest context | Tokens/s |
|---|---|---|---|---|
| Mistral Medium 3.5 128B 127.7B | GGUF Q2_K | 58.8 GB | 20K | 31–45 |
| Qwen3.5 122B-A10B 125.1B, 10B active | GGUF Q2_K | 54.9 GB | 256K (full) | 132–267 |
| Nemotron 3.5 Super VL 120B-A12B 124.5B, 12B active | GGUF Q3_K_M | 63.4 GB | 21K | 111–217 |
| Nemotron 3 Super 120B-A12B 123.6B, 12B active | GGUF Q3_K_M | 63.0 GB | 70K | 111–217 |
| AliceAI Foundation 80B-A3B 81.3B, 3B active | GGUF Q5_K_M | 60.2 GB | 134K | 177–385 |
| Qwen3-Coder-Next 79.7B, 3B active | GGUF Q5_K_M | 59.1 GB | 180K | 177–385 |
| Kolibri-1 78.1B, 3.5B active | GGUF Q5_K_M | 58.0 GB | 256K (full) | 166–355 |
| Llama 3.1 70B 70.6B | GGUF Q6_K | 63.0 GB | 9K | 29–42 |
| K2-Horizon MoVA 36B-A4B 37.4B, 4B active | GGUF Q8_0 | 43.4 GB | 105K | 112–219 |
| Ornith 1.5 35B-A3B 36.0B, 3B active | GGUF Q8_0 | 40.3 GB | 256K (full) | 151–315 |
| Qwen3.6 35B-A3B 36.0B, 3B active | GGUF Q8_0 | 40.3 GB | 256K (full) | 151–315 |
| Ornith 1.0 35B 35.1B, 3B active | GGUF Q8_0 | 39.4 GB | 256K (full) | 151–315 |
| LLM-jp-4.1 32B-A3B Thinking 32.1B, 3.8B active | GGUF Q8_0 | 36.5 GB | 64K (full) | 129–258 |
| Nemotron 3 Nano 30B-A3B 31.6B, 3.5B active | GGUF Q8_0 | 35.4 GB | 256K (full) | 143–294 |
| Gemma 4 31B 31.3B | GGUF Q8_0 | 37.0 GB | 256K (full) | 47–70 |
| GLM-4.7 Flash 31.2B, 3B active | GGUF Q8_0 | 35.4 GB | 198K (full) | 145–301 |
| Xing 4.0 29B-A4B 31.2B, 4B active | GGUF Q8_0 | 35.4 GB | 256K (full) | 128–258 |
| Qwen3-Coder 30B-A3B 30.5B, 3.3B active | GGUF Q8_0 | 35.1 GB | 256K (full) | 133–270 |
| Qwen3 30B-A3B 30.5B, 3.3B active | GGUF Q8_0 | 35.1 GB | 40K (full) | 133–270 |
| Muse Glimmer 30B 29.8B | FP16 / BF16 | 62.2 GB | 98K | 30–42 |
| Granite 4.2 30B 29.3B | FP16 / BF16 | 63.2 GB | 8K | 29–42 |
| ThinkingCap Qwen3.8 27B 27.8B | FP16 / BF16 | 58.5 GB | 80K | 31–45 |
| Qwen3.6 27B 27.8B | FP16 / BF16 | 58.5 GB | 80K | 31–45 |
| Qwen3.8 27B 27.8B | FP16 / BF16 | 58.5 GB | 80K | 31–45 |
| Hemmingway-1 27B 27.3B | FP16 / BF16 | 57.5 GB | 94K | 32–46 |
| Gemma 4 26B-A4B 25.8B, 4B active | FP16 / BF16 | 54.4 GB | 256K (full) | 88–166 |
| gpt-oss-20b 20.9B, 3.6B active | As published (MXFP4) | 15.3 GB | 128K (full) | 169–364 |
| Gemma 4 12B 12.0B | FP16 / BF16 | 26.2 GB | 256K (full) | 63–96 |
| ZDTaichu 5.0 9B 9.8B | FP16 / BF16 | 21.3 GB | 128K (full) | 74–115 |
| Ornith 1.5 9B 9.7B | FP16 / BF16 | 21.1 GB | 256K (full) | 74–117 |
| Qwen3.5 9B 9.7B | FP16 / BF16 | 21.1 GB | 256K (full) | 74–117 |
| LensVLM 9B 9.4B | FP16 / BF16 | 20.6 GB | 256K (full) | 76–119 |
| Ornith 1.0 9B 9.4B | FP16 / BF16 | 20.6 GB | 256K (full) | 76–119 |
| MiMo V2.6 Distill Qwen 9B 9.4B | FP16 / BF16 | 20.6 GB | 256K (full) | 76–119 |
| Bespoke Nimble 9B 9.0B | FP16 / BF16 | 19.6 GB | 8K (full) | 79–124 |
| Granite 4.2 8B 8.8B | FP16 / BF16 | 20.4 GB | 128K (full) | 76–120 |
| LFM2.5 8B-A1B 8.5B, 1.5B active | FP16 / BF16 | 18.5 GB | 128,000 (full) | 157–330 |
| Qwen3 8B 8.2B | FP16 / BF16 | 19.0 GB | 40K (full) | 80–127 |
| Llama 3.1 8B 8.0B | FP16 / BF16 | 18.6 GB | 128K (full) | 82–130 |
| Gemma 4 E4B 8.0B | FP16 / BF16 | 17.6 GB | 128K (full) | 85–137 |
| Ling 3.0 Tiny 7.9B-A1.3B 7.9B, 1.3B active | FP16 / BF16 | 17.2 GB | 128K (full) | 167–359 |
| LightOnOCR-3 4B 4.5B | FP16 / BF16 | 10.6 GB | 256K (full) | 121–209 |
| Spark-X2.5 4B 4.1B | FP16 / BF16 | 9.85 GB | 1M (full) | 127–222 |
| Nemotron 3 Nano 4B 4.0B | FP16 / BF16 | 9.28 GB | 256K (full) | 132–232 |
| Granite 4.2 3B 3.7B | FP16 / BF16 | 9.19 GB | 128K (full) | 132–234 |
| MiniCPM5 2B 2.5B | FP16 / BF16 | 6.52 GB | 128K (full) | 160–303 |
| Limite 1B Violetto 1.0B | FP16 / BF16 | 3.29 GB | 128K (full) | 216–469 |
Too big for 2× RTX 5090 at 8K context
How many RTX 5090 cards these need at Q4_K_M (gpt-oss-120b at MXFP4) with 8K context and 0.5 GB to spare, in one tensor-parallel group; some need more than 8.
- gpt-oss-120b: 4 cards
- Qwen3.8 Flash Next: 4 cards
- Step 3.7 Flash 196B-A11B: 4 cards
- MiniMax M2.7: 8 cards
- DeepSeek V4 Flash: 8 cards
- DeepSeek V4 Flash 0731: 8 cards
- MiMo V2.6 Flash: 8 cards
- IQuest-Q1 320B-A15B: 8 cards
- GLM-5.3 Flash: 8 cards
- MiniMax M3: more than 8 cards
- Ling 3.1 Flash 560B-A25B: more than 8 cards
- DeepSeek V3 / R1: more than 8 cards
- DeepSeek V3.2: more than 8 cards
- GLM-5.3: more than 8 cards
- GLM-5.2: more than 8 cards
- DeepSeek V4.1 Flash 1017: more than 8 cards
- DeepSeek V4.1 Flash: more than 8 cards
- Hy4 Preview 770B-A49B: more than 8 cards
- MiMo V2.6 Pro: more than 8 cards
- DeepSeek V4 Pro: more than 8 cards
- Qwen3.8 2.4T-A95B: more than 8 cards
- Kimi K3: more than 8 cards
Best models for 2× RTX 5090 with room for long context
The biggest models that still fit at Q4_K_M with 32,768 tokens of context (or their whole window, if shorter), the memory left over, the longest context the group takes at that precision and the writing speed with that context in the cache, from 3,584 GB/s of bandwidth. Memory is for the whole group: weights, cache and 10% split across the 2 cards, plus 0.5 GB of runtime on each card (1 GB in all). Memory and left over add up to the group's 64 GB.
| Model | Context | Memory | Left over | Longest context | Tokens/s |
|---|---|---|---|---|---|
| AliceAI Foundation 80B-A3B 81.3B | 32K | 52.2 GB | 11.8 GB | 256K (full) | 168–362 |
| Qwen3-Coder-Next 79.7B | 32K | 51.2 GB | 12.8 GB | 256K (full) | 168–362 |
| Kolibri-1 78.1B | 32K | 50.2 GB | 13.8 GB | 256K (full) | 162–345 |
| Llama 3.1 70B 70.6B | 32K | 55.7 GB | 8.27 GB | 54K | 33–47 |
| K2-Horizon MoVA 36B-A4B 37.4B | 32K | 30.8 GB | 33.2 GB | 190K | 85–160 |
llama-server commands for 2× RTX 5090
GGUF repos checked 2026-09-29; -c is the longest context with 0.5 GB free on 2× RTX 5090. No -ngl: llama.cpp’s -fit, on by default since b7440, places the layers.
Llama 3.1 70B, Q4_K_M with 54K tokens: 29–42 tokens/s on 2× RTX 5090
llama-server -hf bartowski/Meta-Llama-3.1-70B-Instruct-GGUF:Q4_K_M -c 55296 Meta-Llama-3.1-70B-Instruct-Q4_K_M.gguf, 42.5 GB: 63.3 GB used and 726 MB free of 2× RTX 5090's 64 GB, 29–42 tokens/s once the 54K cache is full.
K2-Horizon MoVA 36B-A4B, Q4_K_M with 190K tokens: 24–42 tokens/s on 2× RTX 5090
llama-server -hf IFM/K2-Horizon-MoVA-36B-A4B-GGUF:Q4_K_M -c 194560 K2-Horizon-MoVA-36B-A4B-Q4_K_M.gguf, 22.4 GB: 63.4 GB used and 619 MB free of 2× RTX 5090's 64 GB, 24–42 tokens/s once the 190K cache is full.
Qwen3-Coder-Next, Q4_K_M with 256K tokens: 89–169 tokens/s on 2× RTX 5090
llama-server -hf unsloth/Qwen3-Coder-Next-GGUF:Q4_K_M -c 262144 Qwen3-Coder-Next-Q4_K_M.gguf, 48.5 GB: 57.3 GB used and 6.68 GB free of 2× RTX 5090's 64 GB, 89–169 tokens/s once the 256K cache is full.
How fast 2× RTX 5090 writes as the context fills
Tokens per second at Q4_K_M for the biggest models that fit with 32K tokens, with 8K and 32K tokens in the cache and at the longest context the group holds, and at Q8_0 with 8K where that fits. Each token reads the active weights and the whole cache once, so the speed follows the 3,584 GB/s of bandwidth and falls as the cache grows. The ceiling is that bandwidth divided by the bytes read per token, which no runtime reaches; the reply time is for 1,000 new tokens with 32K (or the longest context) in the cache, prompt processing aside.
| Model | 8K | 32K | Longest | At the longest | Q8_0 at 8K | Bandwidth ceiling at 8K | 1,000-token reply at 32K |
|---|---|---|---|---|---|---|---|
| AliceAI Foundation 80B-A3B | 186–412 | 168–362 | 256K | 89–169 | Does not fit | 1,777 | 3–6 s |
| Qwen3-Coder-Next | 186–412 | 168–362 | 256K | 89–169 | Does not fit | 1,777 | 3–6 s |
| Kolibri-1 | 175–382 | 162–345 | 256K | 95–181 | Does not fit | 1,516 | 3–6 s |
| Llama 3.1 70B | 38–55 | 33–47 | 54K | 29–42 | Does not fit | 79 | 21–31 s |
| K2-Horizon MoVA 36B-A4B | 138–282 | 85–160 | 190K | 24–42 | 112–219 | 889 | 6–12 s |
| Ornith 1.5 35B-A3B | 187–416 | 172–372 | 256K | 98–188 | 151–315 | 1,808 | 3–6 s |
| Qwen3.6 35B-A3B | 187–416 | 172–372 | 256K | 98–188 | 151–315 | 1,808 | 3–6 s |
| Ornith 1.0 35B | 187–416 | 172–372 | 256K | 98–188 | 151–315 | 1,808 | 3–6 s |
| LLM-jp-4.1 32B-A3B Thinking | 163–346 | 131–264 | 64K | 104–200 | 129–258 | 1,256 | 4–8 s |
| Nemotron 3 Nano 30B-A3B | 181–398 | 177–386 | 256K | 144–296 | 143–294 | 1,653 | 3–6 s |
Near misses on 2× RTX 5090
Models that miss at Q4_K_M with 32,768 tokens of context (or their whole window), or leave under 0.5 GB free there, but fit with a shorter context or 3-bit weights, or are short by at most a quarter of the memory and fit with MoE offload. Smallest shortfall first.
| Model | Short by at Q4_K_M | Fits instead |
|---|---|---|
| Nemotron 3 Super 120B-A12B 123.6B | 13.9 GB | GGUF Q3_K_M with 32K, 63.2 GB |
| Nemotron 3.5 Super VL 120B-A12B 124.5B | 14.4 GB | GGUF IQ3_XXS with 32K, 53.9 GB |
| Qwen3.5 122B-A10B 125.1B | 15.4 GB | GGUF IQ3_XXS with 32K, 54.7 GB |
What more cards or MoE offload unlock
4× RTX 5090 (128 GB) would add 7 models at Q4_K_M with 8K context: gpt-oss-120b, Nemotron 3 Super 120B-A12B, Nemotron 3.5 Super VL 120B-A12B, Qwen3.5 122B-A10B, Mistral Medium 3.5 128B, Qwen3.8 Flash Next, Step 3.7 Flash 196B-A11B.
Run locally or rent two RTX 5090 GPUs?
Renting two RTX 5090 GPUs costs a median of $1.38 an hour on demand ($0.69 per card), across the providers getdeploying.com tracks (checked ), so every $1,000 of purchase price equals about 725 hours of rent, 30 days around the clock. At that rate AliceAI Foundation 80B-A3B at Q4_K_M with 32K tokens, the biggest model here that fits with a long context, writes 168–362 tokens/s for one request: about $1.1–2.3 per million generated tokens. Electricity and resale value are left out, and no card prices are listed because 2026 street prices vary widely between sellers; compare current ones before you decide.
Serving with vLLM on 2× RTX 5090
The KV cache pool vLLM builds with --tensor-parallel-size 2 at its default --gpu-memory-utilization 0.92 and --max-model-len 32768, weights as published, from the vLLM KV cache calculator. The pool is shared by every request; the last column assumes 4,096 tokens each.
| Model | KV cache per GPU | Pool (tokens) | At 32K | Requests at 4K |
|---|---|---|---|---|
| gpt-oss-20b | 20.6 GB | 1,592,754 | 48.61x | 219 |
| Qwen3 8B | 19.8 GB | 287,632 | 8.78x | 70 |
How these numbers are worked out
Memory is the weights at each precision plus the KV cache for 8,192 tokens in FP16 and runtime overhead (0.5 GB on each card plus 10%), computed from each model's files on Hugging Face with the LLM VRAM Calculator. Speed is estimated from memory bandwidth and the parameters read per token with the LLM Speed Calculator. Both tools take any other model from Hugging Face.
Nearby GPUs and setups
How many of the tracked models each one holds at Q4_K_M with 8K context, against 43 here.
| Setup | How it relates | Memory | Bandwidth | Models at Q4_K_M |
|---|---|---|---|---|
| 2× RTX 4090 | Next size down | 48 GB | 2,016 GB/s | 40 (−3) |
| A100 80GB | Next size up | 80 GB | 2,039 GB/s | 47 (+4) |
| RTX 5090 | Fewer of this card | 32 GB | 1,792 GB/s | 39 (−4) |
Model numbers read from Hugging Face on .