Skip to content

webdevtodayjason/vrambudget

Repository files navigation

vrambudget: What LLM fits my hardware? VRAM ~= params × (bits ÷ 8)

License Stars Last commit Discussions Issues AVL L3

What LLM fits my hardware?

The math behind local LLM memory budgets. Plug in a GPU and a context length; see what's actually left for weights after the KV cache, runtime overhead, and a safety margin.

Live site · Run the calculator · Read the math · Join the discussion


40

GPU presets

20

curated models

9

quant formats

64

agent-readable routes

MIT

open source

The thesis

Every "can I run this LLM" tool lists models and calls it done. They show a green checkmark next to a 70B on a 24GB card and hope you don't ask why. vrambudget skips the magic. There is one formula and three taxes:

VRAM ~= params × (bits ÷ 8)

That's the floor. Everything else is overhead.

weights_budget = total_vram × (1 − safety)
                 − kv_cache × concurrency
                 − framework_overhead

Three subtractions and one multiplication. Anyone telling you it needs to be more complicated is selling you something.

How to use the calculator

The calculator is on the home page. Five sliders, four tiles, one bar, three tabs.

1. Pick a GPU

Across the top of the calculator: eight family tabs (RTX 50, RTX 40, RTX 30, Apple Silicon, Workstation, Datacenter, AMD, Intel). Each tab reveals every card in that family. Click a card to lock the calculator to its stock VRAM.

For a long-form view of every GPU at once, visit /gpu.

2. Tune the four sliders

Slider What it does
VRAM Total memory on the card. Auto-set from your GPU choice; override freely.
System RAM Reserved for future model-split workflows. Not currently in the math.
Context Token window. 8K is conservative; 32K and 128K make KV cache the dominant tax.
Concurrency How many requests serve in parallel. Each one gets its own KV cache.
Safety headroom Percentage of VRAM you refuse to spend. 15 percent is a sane default.

3. Read the four tiles

  • Total VRAM — device capacity
  • KV cache — what the context-tax costs you
  • Runtime overhead — CUDA / kernels / allocator slack
  • Weights budget — what's actually left for the model

The orange tile is the answer. The budget bar below shows the four pieces stacked so you can see where the VRAM went.

4. Find a model

Three tabs below the bar:

  • Curated picks — the 30 catalog models, grouped by fit (fits / tight / over). Each row picks the highest-bit quantization that fits your budget. Click any model name to open its Hugging Face repo.
  • Search Hugging Face — live search across HF's GGUF-tagged models. Type a name; results render with the same fit classification keyed to your current budget.
  • By size — drag a params slider; see all nine quants in a 3×3 matrix with the size and fit class for each.

5. Drill into a card or a model

Every GPU card in the grid has a link to its detail page. Each detail page pre-binds the calculator to that card, plus a fit table of the top 12 models, plus four "compare to" cards for stepping up or down by VRAM.

Same for models: every model name links to /model/<slug> with the GPU-recommendation matrix across five quants.

What's in the catalogs

GPUs (40)

RTX 50: 5070 · 5070 Ti · 5080 · 5090 RTX 40: 4060 · 4060 Ti 16GB · 4070 · 4070 Super · 4070 Ti Super · 4080 · 4080 Super · 4090 RTX 30: 3060 · 3070 · 3080 · 3080 Ti · 3090 · 3090 Ti Apple Silicon: M2 Max 64 · M2 Ultra 192 · M3 Max 64 · M3 Max 96 · M3 Ultra 512 · M4 Pro 64 · M4 Max 128 · M5 Pro 64 · M5 Max 128 Workstation: A6000 · RTX 6000 Ada · RTX Pro 6000 · L40S Datacenter: H100 80GB · H200 · B200 · DGX Spark · 2× H100 NVL AMD: RX 7900 XTX · W7900 · MI300X Intel: Arc B580 · Arc Pro B60 · Gaudi 3

Models (30 curated, refreshed 2026-05)

Meta: Llama 3.2 1B · Llama 3.2 3B · Llama 3.1 8B · Llama 3.3 70B · Llama 3.1 405B Alibaba: Qwen 2.5 7B · Qwen 2.5 32B · Qwen 2.5 Coder 32B · Qwen 2.5 72B · Qwen3 30B A3B · Qwen 3.5 9B · Qwen 3.6 27B · Qwen 3.6 35B A3B OpenAI: gpt-oss 20B · gpt-oss 120B Mistral: Mistral 7B v0.3 · Mistral Small 3 · Mixtral 8x7B · Mixtral 8x22B Microsoft: Phi-4 Mini · Phi-4 Google: Gemma 2 9B · Gemma 4 E4B · Gemma 4 26B A4B DeepSeek: DeepSeek V3 · DeepSeek R1 Cohere: Command R+ IBM: Granite 8B Code BigCode: StarCoder2 15B 01.AI: Yi 34B

Quantization formats (9)

FP16/BF16 · FP8/INT8 · Q8_0 · Q6_K · Q5_K_M · Q4_K_M · Q3_K_M · AWQ · GPTQ

LLM hosting runtimes (5)

Cross-platform: Ollama · LM Studio Apple Silicon: MLX · oMLX Server: vLLM

Keeping the catalog fresh

LLMs ship faster than any curated list can keep up. vrambudget runs three feedback loops at once:

  1. Editorial curation of src/lib/models.ts (~quarterly). The pinned list is canonical orgs only: meta-llama, Qwen, openai, mistralai, microsoft, google, deepseek-ai, ibm-granite, bigcode, 01-ai, CohereForAI. Each entry carries a releaseQuarter so it's obvious what's stale. Forks, distills, and uncensored remixes belong on Hugging Face, not here.

  2. Live "Search Hugging Face" tab in the calculator. Calls https://huggingface.co/api/models?search=<q>&filter=gguf&sort=downloads directly from the browser. Always current; classifies each result against your VRAM budget on the fly.

  3. Build-time HF enrichment (Phase 2, not shipped yet). A scripts/refresh-hf-stats.ts will fetch downloads, likes, and last_modified for every curated hfRepo at build, write the result into data/hf-stats.json, and surface it on each model detail page. Entries below a download threshold will get a build warning so they get reviewed in the next editorial pass.

How to propose a new model:

  1. Confirm it's canonical (an official org repo, not a community quant)
  2. Open a PR to src/lib/models.ts with slug, name, hfRepo, params, family, type, contextK, fp16GB, summary, releaseQuarter
  3. If MoE, set activeParams to active-per-forward-pass count
  4. CI runs pnpm build to validate the static export still emits cleanly

Agent View Layer (AVL)

Every page on vrambudget ships a parallel agent-readable view at <route>.agent (e.g. /gpu/rtx-4090.agent). The view is TOON-encoded and includes @meta, @intent, @state, @actions, @context, and @nav sections per the AVL L3 conformance spec. The full manifest lives at /agent.txt.

Built with @frontier-infra/avl.

Local development

pnpm install
pnpm dev          # localhost:3000, hot reload
pnpm typecheck    # tsc --noEmit
pnpm build        # static export to out/, plus postbuild AVL emitter
pnpm start        # serve out/ on $PORT (default 3000)

out/ after build contains:

  • 64 route HTMLs (home, the-math, /gpu, /model, 40 GPU detail, 20 model detail)
  • 64 .agent companion files
  • agent.txt, sitemap.xml, robots.txt
  • 61 OG image PNGs, favicon SVG, apple-touch-icon
  • Static assets and font bundles

Deploy

The project is wired for Railway out of the box. railway.toml pins Node 22 + pnpm 9 and configures Nixpacks with explicit build/start commands and a / healthcheck.

Works on any static host: Cloudflare Pages, Vercel, Netlify, S3+CloudFront, GitHub Pages, plain nginx. Just point at out/.

Stack

Roadmap

  • Phase 2: Runtime badges. Per-model compatibility badges for Ollama, LM Studio, vLLM, and MLX with one-click install commands.
  • Build-time HF enrichment. Pull download counts, license, and architecture from the HF Hub API at build so curated cards show context beyond what the slug carries.
  • Per-model architecture. Replace the 13B reference for KV cache with per-model GQA / MQA + head dimensions for tighter estimates.
  • Tokens-per-second. Bandwidth-based throughput estimates next to the fit pills.
  • Cloud comparison. This model on your machine vs OpenRouter pricing for the equivalent.

See issues for the live list.

Contributing

Open a PR. Two soft rules:

  • No em dashes in new copy. Colons, periods, semicolons.
  • Numbers in monospace. VRAM, params, GB, percentages.

About the builder

Built by Jason Brashear. MSP owner, AI application developer, and 30-year IT veteran out of Texas.

License

MIT. See LICENSE. Use it however you want.

About

vrambudget.com — what LLM fits my hardware? VRAM math + 40 GPUs + 20 models + AVL L3

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages