llamaperf

Local model performance on your hardware

Find which open-weight LLMs fit in your GPU or Mac and compare the speeds people report on setups like yours.

What runs on your hardware?

Pick your GPU or Mac, then read the speeds people reported on it, or estimate which models fit and how fast they run.

Free to use. No account needed. Memory estimates and community measurements are labelled separately.

Looking for a particular model?

Search for a model to see its reported speeds across GPUs and Macs.

Local model performance reports from the community

These are individual setups, not a controlled benchmark. Compare GPU count, quantization, context and offloading before comparing speeds. How to read a report →

GPU: M5 Max 36GB
Compare setup details (1 active)

Exact recorded values. Context may be a configured limit; matching filters does not establish identical prompts, offloading or concurrency.

Apple hardware
generation:
145.8 tokens/s
quant:
4-bit (MLX)

Reported by the source; GPU count, offloading and concurrent requests can change these figures. Prompt-processing speed is shown only when the source reports it; generation speed cannot tell us time to first token. Check the full setup before comparing.

Source-reported developer measurement by Rapid-MLX, measured 2026-10-12 and read 2026-10-13; not rerun locally. Primary source: https://rapidmlx.com/compare . It links the common timing harness: https://rapidmlx.com/blog/assets/compare-2026-10/bench_compare.py . The Qwen3.6-35B-A3B October summary, versions and per-request files were not obtained, so this report uses the article's model-specific table/measurement notes and retains rounded rates. Hardware: ONE Mac Studio, Apple M5 Max, 36 GB installed unified memory. CPU/GPU core counts, OS, storage, power/thermal state, swap, detailed placement and measured memory are unknown. Installed unified memory is not dedicated VRAM. Model: Qwen3.6-35B-A3B, MLX 4-bit. Runtime: oMLX 0.7.0. Documented SSD cache directory enabled. Speculative-decoding state is not established. The source says the comparison engines use the same weights. Upstream model verified at https://huggingface.co/Qwen/Qwen3.6-35B-A3B ; this is an upstream reference, not the tested MLX download. Tested converter/repository, revision, checksum, shards, precise quantization recipe and drafter artifact are unverified. Do not inherit the September artifact revisions or map today's alias to the historical download. Headline: 145.8 tokens/s, the article's rounded single-stream decode rate. The shared harness defines decode as engine-reported completion tokens minus one divided by the interval between the first and last content-bearing SSE chunks observed at the client. Reasoning tokens are included when returned in usage. This is client-observed streaming decode-phase throughput, not engine-native timing, wall-time completion throughput or prompt processing; stream chunking may affect comparisons. The published scenario-a harness asks for a bicycle-history essay at temperature 0, a 512-token output cap, and computes a median of three requests. The October prose describes a single run per engine. With this model's raw summary unavailable, the realized repetition count, sample spread, actual prompt and completion counts, invocation flags and warm-up/cache state are unverified. The script's normal separate greeting warm-up has a 16-token cap but can be disabled. A cap is not an actual output count, and the common script alone does not prove every invocation flag. Configured context capacity, KV precision and Flash Attention are unknown. Separate four-stream result: 281.9 tokens/s. The common scenario-d harness sums engine completion counts over the elapsed wall time of all four requests, which includes prompt processing/startup and waiting; its standard protocol takes the median of two repetitions and asks for at most 256 tokens per request. This is an aggregate wall-throughput result, not single-user decode, and stays in Notes rather than headline TG. Actual output counts and repetitions are not raw-validated here. Separate approximately 2K cold-prompt TTFT is 1.14 s. Its actual token count is not verified. TTFT is request send to the first content/reasoning/tool-bearing chunk; it must not be converted to native prefill by dividing prompt tokens by this time. No native PP is reported, so leave PP blank. Approximate probe sizes and the separate roughly 23K-token agent-session prefix are not decode prompt length or configured context capacity. The source warns that differences under about 5% may be run variation. Treat as a developer comparison with limited reproduction evidence, not independent validation. Additional separate October agent-replay observation: first-turn latency after server restart is 0.34 seconds for this model/runtime. The article describes agent-turn time to first token; the common harness can use end-of-stream fallback when no earlier token is emitted. This model-specific raw flag is unavailable, so preserve this as reported restart-turn latency, not a verified pure-TTFT or model-load estimate. It is separate from the cold approximately 2K probe and headline decode workload.

Oct 13, 2026
Apple hardware
generation:
78.0 tokens/s
quant:
4-bit (MLX)

Reported by the source; GPU count, offloading and concurrent requests can change these figures. Prompt-processing speed is shown only when the source reports it; generation speed cannot tell us time to first token. Check the full setup before comparing.

Source-reported developer measurement by Rapid-MLX, measured 2026-10-12 and read 2026-10-13; not rerun locally. Primary source: https://rapidmlx.com/compare . It links the common timing harness: https://rapidmlx.com/blog/assets/compare-2026-10/bench_compare.py . The Qwen3.5-9B October summary, versions and per-request files were not obtained, so this report uses the article's model-specific table/measurement notes and retains rounded rates. Hardware: ONE Mac Studio, Apple M5 Max, 36 GB installed unified memory. CPU/GPU core counts, OS, storage, power/thermal state, swap, detailed placement and measured memory are unknown. Installed unified memory is not dedicated VRAM. Model: Qwen3.5-9B, MLX 4-bit. Runtime: oMLX 0.7.0. Documented SSD cache directory enabled. Speculative-decoding state is not established. The source says the comparison engines use the same weights. Upstream model verified at https://huggingface.co/Qwen/Qwen3.5-9B ; this is an upstream reference, not the tested MLX download. Tested converter/repository, revision, checksum, shards, precise quantization recipe and drafter artifact are unverified. Do not inherit the September artifact revisions or map today's alias to the historical download. Headline: 78.0 tokens/s, the article's rounded single-stream decode rate. The shared harness defines decode as engine-reported completion tokens minus one divided by the interval between the first and last content-bearing SSE chunks observed at the client. Reasoning tokens are included when returned in usage. This is client-observed streaming decode-phase throughput, not engine-native timing, wall-time completion throughput or prompt processing; stream chunking may affect comparisons. The published scenario-a harness asks for a bicycle-history essay at temperature 0, a 512-token output cap, and computes a median of three requests. The October prose describes a single run per engine. With this model's raw summary unavailable, the realized repetition count, sample spread, actual prompt and completion counts, invocation flags and warm-up/cache state are unverified. The script's normal separate greeting warm-up has a 16-token cap but can be disabled. A cap is not an actual output count, and the common script alone does not prove every invocation flag. Configured context capacity, KV precision and Flash Attention are unknown. Separate four-stream result: 224.6 tokens/s. The common scenario-d harness sums engine completion counts over the elapsed wall time of all four requests, which includes prompt processing/startup and waiting; its standard protocol takes the median of two repetitions and asks for at most 256 tokens per request. This is an aggregate wall-throughput result, not single-user decode, and stays in Notes rather than headline TG. Actual output counts and repetitions are not raw-validated here. The separate approximately 2K and 16K cold-prompt TTFTs are 0.747 s and 5.721 s. Their actual token counts are not verified. The main comparison table says 78.0 tokens/s, while the homepage and short comparison prose say 77.9. Retain the main table value as rounded source-reported data, with this discrepancy disclosed; no raw adjudication was possible. TTFT is request send to the first content/reasoning/tool-bearing chunk; it must not be converted to native prefill by dividing prompt tokens by this time. No native PP is reported, so leave PP blank. Approximate probe sizes and the separate roughly 23K-token agent-session prefix are not decode prompt length or configured context capacity. The source warns that differences under about 5% may be run variation. Treat as a developer comparison with limited reproduction evidence, not independent validation. Additional, separate October agent-replay latency observations from the same model/runtime table (seconds): initial cold turn 1 8.576; turns 2-10 median 0.238; total of ten turn timings 10.772. After server restart: turn 1 0.265; turns 2-10 median 0.230; ten-turn total 2.340. The article describes per-turn time to first token; if no earlier streamed token is emitted, the harness can fall back to end-of-stream time. Per-request fallback flags are unavailable here, so these are reported agent-turn latencies with that caveat, not verified pure-TTFT values, load-plus-prompt estimates, or the single-stream decode workload. The session prefix is approximately 23K tokens; do not use it as configured capacity.

Oct 13, 2026
Apple hardware
generation:
25.3 tokens/s
quant:
4-bit (MLX)

Reported by the source; GPU count, offloading and concurrent requests can change these figures. Prompt-processing speed is shown only when the source reports it; generation speed cannot tell us time to first token. Check the full setup before comparing.

Developer-reported measurement by Rapid-MLX, measured 2026-10-12, read 2026-10-13; not rerun locally. Primary comparison: https://rapidmlx.com/compare . Exact Qwen3.8-27B summary: https://rapidmlx.com/blog/assets/compare-2026-10/27b/summary.json . Versions: https://rapidmlx.com/blog/assets/compare-2026-10/27b/raw/versions.json . Harness: https://rapidmlx.com/blog/assets/compare-2026-10/bench_compare.py . Per-request inventory: https://rapidmlx.com/blog/assets/compare-2026-10/27b/raw/manifest.json . One Mac Studio, Apple M5 Max, 36 GB installed unified memory. CPU/GPU core counts, macOS, storage, power mode, thermals, clocks, swap, detailed placement and measured RAM/VRAM are unstated in the inspected October metadata. Installed unified memory is not dedicated VRAM. Qwen3.8-27B dense, MLX 4-bit. Engine/configuration: oMLX 0.7.0. Documented SSD cache directory enabled; image input supported. Speculative-decoding state is not established by the inspected metadata. The comparison says the engines used identical weights. Verified upstream reference: https://huggingface.co/Qwen/Qwen3.8-27B . This is NOT the tested MLX artifact. Current alias documentation points qwen3.8-27b-4bit to https://huggingface.co/rapid-mlx/Qwen3.8-27B-4bit-MTP-MLX , but the inspected run metadata does not bind that repository, its revision, shard hashes or the exact drafter to these runs. Do not present the current alias mapping as a verified historical download. Quantization group size/recipe and tested revision remain unknown. Headline is 25.262689120415786 tokens/s, the published summary's single-stream decode figure. Its numerator is the engine's completion-token count minus one; its denominator is client-observed elapsed time between first and last content-bearing SSE chunks. Reasoning output is counted when reported by the engine. This is a streaming decode-phase rate, not engine-native timing, end-to-end throughput or prompt processing. Chunk grouping and transport can affect comparisons. The harness computes a median of three requests for this scenario, and summary decode_runs is 3; the comparison prose also calls this a single run per engine. Raw request files were not obtained, so this discrepancy and sample spread are unresolved. The harness requests an essay about bicycle history, temperature 0, maximum 512 generated tokens. Actual decode prompt and completion counts are unknown here; 512 is the requested cap. Configured context capacity is unknown. The harness normally warms up with a separate 16-token-cap greeting, but the October invocation flags and effective cache state are unverified. Do not inherit the September machine, artifact revisions or thinking flags. Separate four-stream result: 75.30712308042115 tokens/s. That scenario sums engine completion counts over wall time for all four requests, including their startup/prefill and waiting, then takes the median of two repetitions. It is NOT single-user decode and must not be placed in the headline generation field. Its per-request cap is 256; realized counts are unverified. Separate cold TTFT probes: 2030 reported prompt tokens with 2.6151716250169557 seconds, and 15533 with 19.888424208998913 seconds. These counts are summary metadata for other requests, not the decode prompt or configured capacity. TTFT begins at request send and ends at the first content/reasoning/tool-bearing chunk. Native prefill throughput is unavailable: leave PP blank and do not divide tokens by TTFT. Flash Attention, KV precision and exact batch configuration are unknown. Source warns differences below roughly 5% can be run variation. Findings are source-reported developer measurements with the above reproducibility limits.

Oct 13, 2026
Showing 1–3 of 3
Page 1 of 1

Community benchmarks snapshot

Records by GPU

AMD Strix Halo 128GB294NVIDIA RTX 3090190NVIDIA RTX 5090134NVIDIA DGX Spark77M5 Max 48GB65NVIDIA RTX Pro 6000 Blackwell62NVIDIA RTX 5060 Ti 16GB58NVIDIA RTX 3060 12GB54AMD Radeon AI PRO R9700 32GB50M4 Max 128GB49

Records by model

2211 total
Qwen3.81021
Qwen3.6238
DeepSeek V4 Flash147
Gemma 4144
Qwen3.597
Qwen353
other511

Records by engine

1645 total
llama.cpp875
vLLM189
MLX100
Strata70
Ollama62
other349

Use cases

coding 556agentic 357long-context 272tool-use 153vision 109summarization 53math 43creative-writing 37multilingual 23text-generation 9rp 8reasoning 3
coding556agentic357long-context272tool-use153vision109summarization53math43creative-writing37

Median generation t/s by GPU

On Qwen3.8 27B at 4-bit, plain single-GPU runs. Full ranking

RTX 509082RTX Pro 600067M5 Ultra 256GB50RX 7900 XTX48RTX 309036RTX 5090 Laptop 24GB34RTX 409032V100 32GB31Radeon AI PRO R9700 32GB30RX 7800 XT 16GB30

Prompt processing, same model

M5 Ultra 256GB1800RX 7900 XTX530RTX 3090561RTX 40901949V100 32GB941RTX 3080 20GB997Arc Pro B70512M1 Ultra 128GB153Arc Pro B60 24GB380M1 Max 32GB82

Reports by model size

Qwen3.8 27B566Qwen3.8 125B · 6B active371DeepSeek V4 Flash 284B · 13B active130Qwen3.6 35B · 3B active129Qwen3.6 27B72Gemma 4 26B · 4B active36GLM-5.3 320B · 18B active33DeepSeek V4.1 Flash 552B · 16B active28

Quants

Q4_K_M290UD-Q4_K_XL140NVFP4120Q8_0984-bit79Q4_K_XL71IQ4_XS70MXFP458IQ3_XXS52Q450