Skip to content

onepunk/llmsizer

Repository files navigation

llmsizer

Derived from llmfit — find which LLMs actually fit on your hardware. Try it at llmsizer.com.

llmsizer screenshot

What it does

  • Detects your GPU via WebGL
  • Estimates memory for each model across quantization levels (Q2_K through F16)
  • Predicts speed (tokens/sec) based on your GPU's memory bandwidth
  • Scores and ranks 5,000+ models by quality, speed, fit, and context length
  • Shows what fits — perfect, good, marginal, or won't run

Multi-GPU

llmsizer models multi-GPU systems the way llama.cpp / vLLM actually run them:

  • Layer-split (default for mixed hardware or slow interconnects): model weights are partitioned across GPUs proportional to VRAM. Tokens flow through layers serially, so TPS ≈ single-GPU-of-equivalent-bandwidth, with ~2% overhead for inter-GPU transfers.
  • Tensor-parallel (auto-enabled on homogeneous GPUs with NVLink or PCIe 5.0): compute parallelizes across GPUs with empirical speedups of 1.6× (2 GPUs) up to 2.8× (4 GPUs) on NVLink.

Add more GPUs in the hardware editor. Pick your interconnect (NVLink, PCIe 5/4/3, or none) and let "auto" parallelism pick the right strategy, or override.

URL format: ?gpu=<name>[:count][,<name>[:count]]&ic=<link>&par=<mode>, e.g. ?gpu=RTX%203090:2&ic=nvlink&par=auto.

Tech

Static React SPA — everything runs in your browser. No backend required.

Built with TypeScript, Vite, and a model database auto-updated weekly from HuggingFace.

Run locally

npm install
npm run dev

Test

npm test

Regenerating the model database

public/models.json is generated by a Python scraper with a pre-quantized-repo sizing fix. Stdlib only — no pip deps.

# curated list only
python3 scripts/scrape_hf_models.py
cp data/hf_models.json public/models.json

# curated + top-N trending models (what's currently shipped)
python3 scripts/scrape_hf_models.py --discover -n 800
cp data/hf_models.json public/models.json

For AWQ/GPTQ/MLX/BNB repos, the scraper sums real .safetensors file sizes from the HF tree API and writes weight_gb, since HuggingFace's safetensors.total reports packed-tensor element counts (~8× too small for 4-bit quantized weights). The UI engine uses weight_gb directly when present instead of applying a generic Q4_K_M formula.

Regenerating the GPU database

src/detection/gpu-specs.ts is generated from the RightNow GPU database with small vendor-spec overrides for accelerator SKUs whose upstream entries lag.

npx tsx scripts/generate-gpu-specs.ts

To patch pre-quantized entries in an already-scraped models.json without re-scraping, run:

python3 scripts/fix_quantized_entries.py

License

MIT — see LICENSE.

The scrapers in scripts/ are derived from llmfit (MIT, © 2026 Alex Jones); the upstream notice is reproduced in NOTICE.

About

Find which LLMs actually fit on your hardware. Client-side GPU detection, quantization-aware memory estimation, and speed predictions.

Topics

Resources

License

Stars

10 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors