Open benchmarks for local generative AI
What can this hardware
actually do with local AI?
One command runs a pinned model, at a pinned precision, against a pinned workload, in a pinned container. Everything that could move a number is frozen. Your hardware is the only variable — so the numbers mean something.
# 12 GB and up · about 14 minutes · no account needed
docker run --rm --gpus all -v ~/.localmax:/cache \
ghcr.io/pavel4ai/localmax-llm:latest run llm-entry-baseResults
0
— ranked
Systems
0
distinct machines
GPU models
0
Ampere through Blackwell
Profiles
15
3 categories × 3 tiers × 3 lanes
Three tiers, because one model cannot span 12 GB to 192 GB
A 4B model measured on a dual RTX PRO 6000 would leave the second card idle and rank a DGX Spark below an RTX 3060. So a tier is defined by the VRAM its ranked run is meant to fill, and each has its own fixed model.
Entry · 12 GB+
Every supported GPU runs this, from an RTX 3060 12 GB up. It is the one leaderboard that spans the whole hardware range.
0 results
Enthusiast · 24 GB+
Sized to fill 24 GB. The 3090 / 4090 / 5090 class, and the tier where the quantization lanes start to diverge sharply.
0 results
Each tier also has an INT4 lane (Ampere and up) and an NVFP4 lane (Blackwell only), ranked separately. Comparing precisions in one table would compare different numerical workloads. How the lanes work →
Latest results
All results →No results published yet. Be the first — the Entry profile runs on any 12 GB card in about fourteen minutes.
Fixed
Model, revision, quantization, runtime, every runtime flag, prompt set, input and output token counts, image set, diffusion steps, scheduler and seeds. All hashed into the profile, all checked on submission.
Measured
Decode and prefill throughput separately, TTFT, inter-token latency, seconds per diffusion step, images per minute, peak VRAM, board power, joules per token, thermal and power throttle events.
Published
The manifest, the raw per-request records, the telemetry trace and the system report — all retrievable by content hash. Every ranked number is recomputed from the raw data before it is accepted.