Edge0-145B on one RTX 5090: the maker's engine, README start
1x NVIDIA GeForce RTX 5090 32 GB (one machine), driver 610.43.02, kernel 6.12.95 (Debian 13)
Not ranked yet. The rank needs a finished, verified Gauntlet race (the game test), and this setup has not played it yet. It shows Speed v2, Quality v2 and the memory test, every number with its raw files and exact command. How the game test works.
How fast it runs
| Measurement | Result |
|---|---|
| Decode | 134.3 tok/s |
| Words per second | 92.3 words/s |
| Characters per second | 650.1 chars/s |
| Decode, code prompt | 139.0 tok/s |
| Decode, prose prompt | 129.5 tok/s |
| Spread of the decode runs (CV) | 5.2 % |
| Spread of the code runs (CV) | 5.2 % |
| Spread of the prose runs (CV) | 2.5 % |
| Decode, window 1 | 134.0 tok/s |
| Prefill at 2K | 2584.2 tok/s |
| Prefill at 8K | 3851.1 tok/s |
| Prefill at 32K | 4106.7 tok/s |
| Time to first token at 2K | 0.8 s |
| Time to first token at 8K | 2.1 s |
| Time to first token at 32K | 8.0 s |
| Draft acceptance rate | 59.5 % |
| 1 request at once (total) | 108.7 tok/s |
| 2 at once (total) | 111.8 tok/s |
| 4 at once (total) | 113.0 tok/s |
| 8 at once (total) | 112.7 tok/s |
| 1 request at once (per request) | 108.7 tok/s |
| 2 at once (per request) | 84.3 tok/s |
| 4 at once (per request) | 47.0 tok/s |
| 8 at once (per request) | 25.4 tok/s |
| Server slots (1: further requests wait in the engine's queue) | 1 slot |
| Long answer, wall time | 20.2 s |
Long prompts
| Prompt length | Prefill | Time to first token | Decode, code prompt | Decode, prose prompt |
|---|---|---|---|---|
| 16K tokens | 4036.0 tok/s | 4.1 s | 128.2 tok/s | 127.4 tok/s |
| 32K tokens | 4102.3 tok/s | 8.0 s | 133.1 tok/s | 129.7 tok/s |
| 64K tokens | 4117.5 tok/s | 15.9 s | 134.3 tok/s | 126.0 tok/s |
| 128K tokens | 4057.6 tok/s | 32.1 s | 137.3 tok/s | 120.8 tok/s |
Method: code+prose; 2 run(s) each; 512 tokens; 1 warm-up(s); median; context steps: prompts of exactly 16K, 32K, 64K and 128K tokens (a filler log first, the code or prose task prompt last), 2 runs per step, 512 output tokens; decode = tokens after the first / time after the first token; prefill = prompt tokens / time to first token of the same request, median over its requests; requests at once: C1,C2,C4,C8 at once; 2 rounds each; 512 tokens per request; prose prompt; total = all tokens / wall time, per request = tokens / end-to-end time; median over the rounds. Measured 2026-11-15. Raw files: speed result · speed contract · log · long answer.
What ran. Edge0-145B (a latent sparse MoE with 145B parameters and 10.12B active, built on Qwen3.8-Flash-Next) in the Q3_K files of the maker (Hugging Face Edge0/Edge0-145B-q3k, revision 4136439d; 98.1 GiB on disk, of which 47.7 GiB are a table that stays on the SSD) on the maker's own engine: Edge0-AI/Edge0 at commit 7b60076 (edge0-infer serve with edge0-strata). The engine is built from source with CUDA 13.3 for the RTX 5090, as the maker describes for Linux; there is no Linux package. The context is 131,072 tokens, the maker's default, with one request at a time (further requests wait in the engine's queue). Where this run differs from the maker's setup. (1) Card: the maker's published numbers come from an RTX 5090 D with 24 GB; this run used an RTX 5090 with 32 GB. Nothing was lowered. (2) Build: only the target edge0-infer was built, because the build of the other targets stopped on a compiler test (the maker's pull request 221 is about it). (3) The file latent_dense_q4.bin was not loaded; it is only needed for the du=q4 setting. (4) Prompt lengths in the speed test are counted with the tokenizer file of Qwen3.8-Flash-Next, because the model's own tokenizer.json has a different format; the counts were checked to be exact. (5) The 128K step ran with a prompt of 130,048 tokens (the rule of our speed test). Against the maker's own table. The maker's README lists, for the RTX 5090 D 24 GB, 2,169.9 tok/s prefill at 4K, 3,554.9 tok/s prefill at 16K, 99.7 tok/s decode in chat and 121.2 tok/s decode for an agent task, measured with the maker's own tool (bench_session.py, median of 3 runs). We ran the same tool of the maker with the maker's README start command (3 runs, median): 3,647.7 tok/s at 4K, 4,145.0 tok/s at 16K, 125.2 tok/s chat decode and 143.4 tok/s agent decode. These runs are not part of the published raw files of this page; the page's own numbers come from our speed test. The long-answer step wrote its reply to l1-output.txt. The context steps at 16K, 32K, 64K and 128K all fit the 131,072-token window.
Exact command we measured withfor reproducing↓
You do not need this to run the model. It is the exact command of our measurement, so anyone can repeat the result.
python3 speed2.py --base-url http://127.0.0.1:46535/v1 --label edge0-145b-5090-1511-b-speed-r0 --prompts $BENCH/repos/rigmark-v2/prompts-v2.json --output $RUN/raw/edge0-145b-5090-1511-b-speed-r0/edge0-145b-5090-1511-b-speed-r0/speed2 --contract $RUN/raw/edge0-145b-5090-1511-b-speed-r0/edge0-145b-5090-1511-b-speed-r0/speed2/speed-contract.json --parts decode,prefill,conc,l1,ctx --prefill-depths 2048,8192,32768 --prompt-ids code,prose --runs 2 --max-tokens 512 --warmups 1 --prefill-runs 3 --conc-levels 1,2,4,8 --conc-rounds 2 --conc-max-tokens 512 --conc-prompt prose --ctx-depths 16384,32768,65536,131072 --ctx-runs 2 --ctx-max-tokens 512 --tokenizer-json $HOME/s128/tok/qwen38-flashnext/tokenizer.json --tokenizer-python $HOME/not published --sampling {"temperature": 0.0} --sampling-source The model card Edge0/Edge0-145B-q3k README.md @4136439d names no sampling. The author's own speed tool sends temperature 0 (edge0-strata/tools/strata_bench.py:133 @7b60076) and the author's docs say identical requests at temperature 0 can differ because decoding is not bit-for-bit repeatable (edge0-infer/docs/edge0-145b.md:131). Seed 42 sent anyway for speed. --model edge0_145b --no-cache-prompt --server-log $HOME/edge0-1511/logs/server.log --engine-version-file $RUN/logs/engine-version.txt --server-slots 1 --server-slots-source docs: edge0-infer/docs/edge0-145b.md:129 (Edge0-AI/Edge0 @7b60076): 'Concurrent requests wait in edge0-strata's queue instead of receiving 429 as with the native server' = one request at a time; no batch flag in the author's launch (edge0-strata/edge0/models/edge0-145b.json, model-bench.json). --server-ctx 131072 --server-ctx-source edge0-infer/docs/edge0-145b.md:97 (--context default 131072) and edge0-strata/edge0/models/edge0-145b.json (--max-context 131072) @7b60076; HF README 'Context 256K' is the model maximum, not the author's launch value.How well it answers
Thinking off (enable_thinking false in every request), temperature 0, seed 42. Raw numbers only, no overall score.
| Test | Result95 % margin | Right | Cut offcount as wrong | Raw files | |
|---|---|---|---|---|---|
| MMLU-Pro 400 fixed questions, letter only | 49.5 % ± 4.9 pts | 198 / 400 | 0 | answers · summary · log · contract | command |
| GPQA Diamond 198 questions, letter only | 41.4 % ± 6.8 pts | 82 / 198 | 0 | answers · summary · log · contract | command |
| IFEval 200 fixed prompts, strict | 82.0 % ± 5.3 pts | 164 / 200 | 1 | answers · summary · log · contract | command |
| LiveCodeBench 40 newest tasks, the code runs | 57.5 % ± 14.6 pts | 23 / 40 | 0 | summary · log · contract | command |
| Long text 8K 4 tasks x 10 at 8192 tokens | 72.5 % ± 13.4 pts | 29 / 40 | 0 | log · contract · answers · summary | command |
| Long text 32K 4 tasks x 10 at 32768 tokens | 60.0 % ± 14.5 pts | 24 / 40 | 0 | log · contract · answers · summary | command |
Thinking off in every request. Seed 42. Temperature 0 (the model card names no sampling; the maker's own speed tool sends 0). A cut-off answer counts as wrong. Measured 2026-11-15.
Exact commands we measured withfor reproducing↓
You do not need this to run the model. It is the exact command of our measurement, so anyone can repeat the result.
bash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts mmlupro --job edge0-145b-5090-1511-qbash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts gpqa --job edge0-145b-5090-1511-qbash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts ifeval --job edge0-145b-5090-1511-qbash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts lcb --job edge0-145b-5090-1511-qbash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts ruler --job edge0-145b-5090-1511-qbash tools/quality2/measure_all.sh tools/quality2/cards/edge0-145b-q3k-edge0infer-7b60076-readme-5090-1511.json --parts ruler --job edge0-145b-5090-1511-qAlso made this possible
- Model files (Edge0-145B, Q3_K, revision 4136439d)EEdge0 on Hugging FaceHugging Face
- Base model (Qwen3.8-Flash-Next)
Qwen@Alibaba_Qwen Hugging Face GitHub Website - Strata, which the engine builds onNNiko1221GitHub
- llama.cpp (ggml), part of the engine buildGggml-org@ggml_org GitHub
Run it yourself
What you need and how to start it, step by step. The results below come from exactly this setup.
What you need
- Hardware
- 1x NVIDIA GeForce RTX 5090 32 GB (one machine), driver 610.43.02, kernel 6.12.95 (Debian 13)
- Model
- Edge0-145B (Edge0, 145B latent sparse MoE, 10.12B active, base Qwen3.8-Flash-Next) Q3_K (HF Edge0/Edge0-145B-q3k @4136439d, pack 98.1 GiB incl. 47.7 GiB PLE table on SSD)
- Model files (Edge0-145B, Q3_K, revision 4136439d)
- huggingface.co/Edge0/Edge0-145B-q3k
- Base model (Qwen3.8-Flash-Next)
- huggingface.co/Qwen/Qwen3.8-Flash-Next
- Engine
- edge0-infer with edge0-strata at commit 7b60076, built from source — the program that loads the model and answers requests · github.com/Edge0-AI/Edge0
Steps
Get the engine and the model files from the list above.
Start the server with this command. It loads the model into memory. When the model has loaded, the server waits for requests on port 8888, only from this computer.
Engine start (the README command of the maker, with the default device and context written out and our own host and port): edge0-infer serve \ --model Edge0-145B-q3k \ --device cuda:0 \ --host 127.0.0.1 \ --port 8888 \ --context 131072 (engine Edge0-AI/Edge0 at 7b60076, built from source with CUDA 13.3). The speed and quality tools of our tests then talk to it over the OpenAI-compatible API.What the parts mean
--model Edge0-145B-q3kthe model file it loads--host 127.0.0.1who can connect: only this computer--port 8888the network port the server listens on
Start text for this setupfor reproducing↓
You do not need this to run the model. It is the start text of this setup, based on the setup card of this run, with local paths, machine names and addresses shortened or replaced by placeholders, notes added on some pages, and the engine build in front, so anyone can repeat the result.
Edge0-AI/Edge0 edge0-infer serve + edge0-strata (fork of Niko1221/Strata), source build CUDA 13.3 sm_120, README standard start (template arguments only); Engine start (the README command of the maker, with the default device and context written out and our own host and port): edge0-infer serve --model Edge0-145B-q3k --device cuda:0 --host 127.0.0.1 --port 8888 --context 131072 (engine Edge0-AI/Edge0 at 7b60076, built from source with CUDA 13.3). The speed and quality tools of our tests then talk to it over the OpenAI-compatible API.Context and sampling: 131,072 tokens (the maker's default, --context 131072), 1 request at a time, int8 KV cache, speculative decoding on (spec 4), thinking off per request in all our tests, temperature 0 and seed 42 sent with every request.. Hardware: 1x NVIDIA GeForce RTX 5090 32 GB (one machine), driver 610.43.02, kernel 6.12.95 (Debian 13). All raw files of this setup: raw/v2/edge0-145b-q3k-5090-edge0-infer-readme-7b60076.