More
Submit build

Best local LLMs for 24 GB of VRAM or unified memory

Measured speeds from builds where the model ran on more than 16 and up to 24 GB of GPU or unified memory. Each number links to its build and source.

8 GB · 12 GB · 16 GB · 24 GB · 32 GB · 48 GB · 64 GB · 96 GB · 128 GB or more

GPUs in this tier: RTX 3090 · RTX 4090 · Radeon RX 7900 XTX

Fastest measured result per model

ModelPlain decode tok/sWith speculative decoding ⚡Results
Qwen3.6 35B-A3B160.6 (Q4_K_M, RTX 4090)135.2 (UD-Q4_K_XL + MTP (draft-n-max 4), ~16K context, Radeon RX 7900 XTX)10
Qwen3.8 27B42.9 (Q4_K_M (unsloth), no speculation, RTX 3090)139.7 (Q4_K_M (unsloth), greedy code prompt, RTX 3090)7
gpt-oss 20B279.65 (, RTX 4090)–4
Nemotron 3.5 Bolt 74B-A9B––3
Flint 40B-A2.5B179.4 (NVFP4, RTX 4090)–3
Gemma 4 31B43.8 (llama-bench tg128 (quant per result), RTX 4090)–2
Gemma 4 12B98.1 (llama-bench tg128 (quant per result), RTX 4090)–2
Gemma 4 26B-A4B164 (llama-bench tg128 (quant per result), RTX 4090)–1
Qwen3.5 9B137 (llama-bench tg128 (quant per result), RTX 4090)–1
LFM2.5 24B-A2B261-339 (llama-bench tg128 (quant per result), RTX 4090)–1
Muse Glimmer 30B53.7 (UD-Q4_K_XL, RTX 4090)–1
Llama 3.2 3B legacy334.67 (, RTX 4090)–3
Qwen3.6 27B legacy47.0 (llama-bench tg128 (quant per result), RTX 4090)–3
GLM 4.7 Flash legacy164.9 (Q4_K_M (EPYC 75F3 host), RTX 4090)–2
Llama 2 7B legacy188.96 (Q4_0, RTX 4090)–1
Llama 3.1 8B legacy52.99 (Q8, RTX 4090)–1
Mistral Small 22B legacy26.72 (Q6_K, RTX 4090)–1
DeepSeek R1 671B legacy––1
DeepSeek R1 Distill 14B legacy92.49 (, RTX 4090)–1
Llama 3.1 70B legacy3.1 (, RTX 4090)–1

Excludes results the source marks pending and results where part of the model sat in system RAM.

All results in this tier

(MTP, DFlash, DSpark and similar draft-and-verify methods give much higher tok/s on predictable text and are not comparable 1:1 with plain decode)

ModelBuildRan onQuantEnginetok/sDetails
Flint 40B-A2.5BRTX 4090 (llm-speed signed run, Oct 2026): Flint 40B-A2.5B at 169-179 tok/s on llama.cppRTX 4090 (24 GB)NVFP4llama.cpp 0.7.0-dev (build 11803)179.4
Flint 40B-A2.5BRTX 4090 (llm-speed signed run, Oct 2026): Flint 40B-A2.5B at 169-179 tok/s on llama.cppRTX 4090 (24 GB)UD-Q3_K_XLllama.cpp 0.7.0-dev (build 11803)169.2
Flint 40B-A2.5BRTX 3090 (llm-speed signed run, Oct 2026): Flint 40B-A2.5B Q3_K_XL at 128.9 tok/sRTX 3090 (24 GB)UD-Q3_K_XLllama.cpp 0.7.0-dev (build 11803)128.9
Gemma 4 12BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp98.1
Gemma 4 12BRTX 4090 (llm-speed signed runs, Oct 2026): Qwen3.6 35B-A3B 161 tok/s, Gemma 4 12B QAT 98 tok/sRTX 4090 (24 GB)QAT Q4_0llama.cpp b893197.7
Gemma 4 26B-A4BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp164
Gemma 4 31BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp43.8
Gemma 4 31BRTX 3090 running Gemma 4 31B Q4_K_M (llama-bench)RTX 3090 (24 GB)Q4_K_Mllama.cpp b11658 (llama-bench)38.8prefill 1,292 tok/s📏 llama-bench tg128 / pp512; 35.2 tok/s at 16K depth
LFM2.5 24B-A2BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp261-339
Muse Glimmer 30BRTX 4090: Nemotron 3.5 Bolt (IQ2) and Muse Glimmer 30BRTX 4090 (24 GB)UD-Q4_K_XLllama.cpp a37cc461053.7context: 8K📏 llm-speed can-run page, runs on 2026-10-22, peak 15.1 GiB
Nemotron 3.5 Bolt 74B-A9BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp108partly in system RAM
Nemotron 3.5 Bolt 74B-A9BRTX 4090: Nemotron 3.5 Bolt (IQ2) and Muse Glimmer 30BRTX 4090 (24 GB)NVIDIA mixed 2-bit IQ2 GGUF (22.0 GB)llama.cpp build 11669107.3prefill 1,814.7 tok/s📏 Measured decode, llm-speed runpartly in system RAM
Nemotron 3.5 Bolt 74B-A9BRTX 3090 running Nemotron 3.5 Bolt 74B-A9B in 24 GB (IQ2)RTX 3090 (24 GB)NVIDIA mixed 2-bit IQ2 GGUF (22.0 GB)llama.cpp build 11669 (620d2225)87.75prefill 1,183.4 tok/scontext: 4K📏 Measured decode, llm-speed runpartly in system RAM
Qwen3.5 9BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp137
Qwen3.6 35B-A3BRTX 4090 (llm-speed signed runs, Oct 2026): Qwen3.6 35B-A3B 161 tok/s, Gemma 4 12B QAT 98 tok/sRTX 4090 (24 GB)Q4_K_Mllama.cpp b8931160.6
Qwen3.6 35B-A3BRTX 3090: 2026 models (llamabench community)RTX 3090 (24 GB)llama-bench tg128 (quant per result)llama.cpp146-153
Qwen3.6 35B-A3BSingle RTX 3090: Qwen3.6 35B-A3B (Giles Thomas)RTX 3090 (24 GB)Q4 GGUF, all layers on GPU, ~90K ctxllama.cpp CUDA139.6
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL + MTP (draft-n-max 4), ~16K contextllama.cpp ROCm (llama-server)135.2⚡ spec-decode (MTP)
Qwen3.6 35B-A3B4x RTX 3090 lab: Qwen3.6 on vLLM vs llama.cppRTX 3090 (24 GB)IQ4_XS (1 GPU)llama.cpp115-133
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL + MTP, ~64K contextllama.cpp ROCm (llama-server)108.2⚡ spec-decode (MTP)
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL, llama-bench 2K, f16 KVllama.cpp ROCm87.2
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL, ~16K real-text context, q4_0 KVllama.cpp ROCm (llama-server)79.6
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL, ~64K contextllama.cpp ROCm (llama-server)66.0
Qwen3.6 35B-A3BRadeon RX 7900 XTX (24 GB): Qwen3.6 35B-A3B up to 245K context, with MTPRadeon RX 7900 XTX (24 GB)UD-Q4_K_XL, ~245K context, q4_0 KVllama.cpp ROCm (llama-server)38.3
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), greedy code promptOpenJet megakernel (MTP, 4 drafts)139.7⚡ spec-decode (MTP)
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), reasoning modeOpenJet megakernel (MTP)78.0⚡ spec-decode (MTP)
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), greedy code promptllama.cpp (MTP, 2 drafts)72.5⚡ spec-decode (MTP)
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), reasoning modellama.cpp (MTP, 2 drafts)50.9⚡ spec-decode (MTP)
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), no speculationOpenJet megakernel42.9
Qwen3.8 27BSingle RTX 3090: Qwen3.8 27B at 78-140 tok/s with the OpenJet megakernel vs llama.cppRTX 3090 (24 GB)Q4_K_M (unsloth), no speculationllama.cpp40.4
Qwen3.8 27BRTX 3090: 2026 models (llamabench community)RTX 3090 (24 GB)llama-bench tg128 (quant per result)llama.cpp38.2-71.6
gpt-oss 20BIntel Core Ultra 265K + RTX 4090RTX 4090 (24 GB)llama.cpp279.65
gpt-oss 20BRTX 3090 (llm-speed signed runs, Oct 2026): gpt-oss 20B 207 tok/s, Qwen3.6 27B 43 tok/sRTX 3090 (24 GB)reported as Q4_K_Mllama.cpp 0.7.0-dev207.2
gpt-oss 20BRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp203
gpt-oss 20BSingle RTX 3090 24GBRTX 3090 (24 GB)MXFP4llama.cpp161.77
DeepSeek R1 671B legacyEPYC + single RTX 3090 (hybrid) ⚠ uncheckedRTX 3090 (24 GB)Q2_Kllama.cpp CUDA8.97partly in system RAM
DeepSeek R1 Distill 14B legacyIntel Core Ultra 265K + RTX 4090RTX 4090 (24 GB)llama.cpp92.49
GLM 4.7 Flash legacyRTX 4090 (llm-speed signed runs, Oct 2026): Qwen3.6 35B-A3B 161 tok/s, Gemma 4 12B QAT 98 tok/sRTX 4090 (24 GB)Q4_K_M (EPYC 75F3 host)Ollama 0.31.1164.9
GLM 4.7 Flash legacyRTX 3090 (llm-speed signed runs, Oct 2026): gpt-oss 20B 207 tok/s, Qwen3.6 27B 43 tok/sRTX 3090 (24 GB)Q4_K_M (Threadripper PRO host)Ollama 0.31.1134.6
Llama 2 7B legacySingle RTX 4090 (llama.cpp CUDA scoreboard)RTX 4090 (24 GB)Q4_0llama.cpp CUDA (FA)188.96
Llama 3.1 70B legacyRyzen 9 7900X + RTX 4090RTX 4090 (24 GB)GPU+CPU offload3.1
Llama 3.1 8B legacyRTX 4090 desktop (speed comparison vs Macs)RTX 4090 (24 GB)Q8llama.cpp-based52.99
Llama 3.2 3B legacyIntel Core Ultra 265K + RTX 4090RTX 4090 (24 GB)llama.cpp334.67
Llama 3.2 3B legacyRyzen 9 7900X + RTX 4090RTX 4090 (24 GB)llama.cpp237.05
Llama 3.2 3B legacyRyzen 9 9950X + Radeon RX 7900 XTRadeon RX 7900 XT (20 GB)llama.cpp131.2
Mistral Small 22B legacyRTX 4090 desktop (speed comparison vs Macs)RTX 4090 (24 GB)Q6_Kllama.cpp-based26.72
Qwen3.6 27B legacyRTX 4090: 2026 models (llamabench community)RTX 4090 (24 GB)llama-bench tg128 (quant per result)llama.cpp47.0
Qwen3.6 27B legacyRTX 3090 (llm-speed signed runs, Oct 2026): gpt-oss 20B 207 tok/s, Qwen3.6 27B 43 tok/sRTX 3090 (24 GB)Q4_K_Mllama.cpp 0.7.0-dev42.7
Qwen3.6 27B legacyRTX 3090: 2026 models (llamabench community)RTX 3090 (24 GB)llama-bench tg128 (quant per result)llama.cpp40.2

What fits by memory math

Q4_K_M weights (4.8944 bits per weight, per the llama.cpp quantize table) that fit in 24 GB with ~5% headroom, before KV cache: Ornith 1.5 35B-A3B ≈22 GB, Qwen3.6 35B-A3B ≈22 GB, Gemma 4 31B ≈19 GB, Nemotron 3.5 Lightning 30B-A3B ≈18 GB, Qwen3.6 27B legacy ≈17 GB, Qwen3.8 27B ≈17 GB, Gemma 4 26B-A4B ≈15 GB, Devstral Small 2 24B ≈15 GB, LFM2.5 24B-A2B ≈15 GB, gpt-oss 20B ≈13 GB, Mellum 2.1 12B-A2.5B ≈7 GB, Gemma 4 12B ≈7 GB, Qwen3.5 9B ≈5 GB, Llama 3.1 8B legacy ≈5 GB.

FAQ

Which local LLMs have been measured on 24 GB of VRAM?

Llama 2 7B, Llama 3.1 8B, Mistral Small 22B, DeepSeek R1 671B, gpt-oss 20B, DeepSeek R1 Distill 14B, Llama 3.2 3B, Llama 3.1 70B, Qwen3.6 27B, Gemma 4 31B, Gemma 4 26B-A4B, Gemma 4 12B, Qwen3.5 9B, LFM2.5 24B-A2B, Nemotron 3.5 Bolt 74B-A9B, Qwen3.6 35B-A3B, Qwen3.8 27B, GLM 4.7 Flash, Flint 40B-A2.5B, Muse Glimmer 30B (49 results).

What fits in 24 GB of VRAM?

By memory math at Q4_K_M (4.8944 bits per weight, llama.cpp), weights only, before KV cache and context: Ornith 1.5 35B-A3B (≈22 GB), Qwen3.6 35B-A3B (≈22 GB), Gemma 4 31B (≈19 GB), Nemotron 3.5 Lightning 30B-A3B (≈18 GB), Qwen3.6 27B (≈17 GB), Qwen3.8 27B (≈17 GB), Gemma 4 26B-A4B (≈15 GB), Devstral Small 2 24B (≈15 GB). Leave a few GB for context.

Are speculative-decoding results comparable?

Not 1:1. MTP, DFlash and similar methods draft tokens that the main model verifies, which can double tok/s on predictable text. This page lists them in a separate column; tick the box to hide them in the full table.

Not enough VRAM? Rent before you buy. Run bigger models on a rented 24–96 GB cloud GPU by the hour and see the real speed before spending €1,000+. Try it on Runpod
Referral link: if you sign up with Google and add $10, Runpod gives you and RigBase bonus credit (terms). It never affects our data.