The published FP8 checkpoint is 172.78 GiB. A DGX Spark has 128 GB of unified memory, and vLLM’s own recipe for this model starts at four GB300s. Four bits is the only thing that fits on one box, so I measured what it costs.
SingleSpark-Qwen3.8-Flash-Next
Single request. 8,192-token context, eager, speculative depth 3. Three prompt classes, one warm-up each, three retained runs, reasoning tokens counted, prefill excluded by timing from the first streamed token.
| prompt | tok/s | tokens/step | target step |
|---|---|---|---|
| question | 46.43 | 2.514 | 54.15 ms |
| code | 43.81 | 2.380 | 54.32 ms |
| prose | 43.17 | 2.386 | 55.29 ms |
| median | 43.81 | — | 54.32 ms |
Same image with the FP8 dense conversion switched off: 34.36 tok/s, 69.34 ms step — the step is 22% shorter.
No concurrency numbers. Everything here is C1. If you came from my 27B post looking for a 16-concurrent table, there isn’t one — it has not been measured on this model.
Quality. Paired teacher-forced NLL against the BF16-dense control over 23,988 frozen positions: +0.003277 nat/token against a +0.005 threshold declared before the run. Greedy repeats identical 9 of 9. Not task accuracy, and no agentic measurement — which is exactly where four bits is most likely to hurt.
How. NVFP4 base, 309 dense projections re-serialized as blockwise FP8, the 248,320-row output projection at eight bits, and a product-quantized draft head — 16.9 MiB of codebooks replacing a 606 MiB vocabulary scan — driving the model’s own MTP layer. BF16 Gated DeltaNet recurrent state, idea from azampatti/GB10-3.8-Flash-Next.
git clone https://github.com/albond/SingleSpark-Qwen3.8-Flash-Next.git
cd SingleSpark-Qwen3.8-Flash-Next
./install.sh
SNAPSHOT=/path/printed/by/install.sh ./configs/launch-release.sh
Needs 210 GB free under $HOME (101 GiB checkpoint), driver 580.173.02 / CUDA 13.0, Docker with the NVIDIA Container Toolkit.
Not claimed: concurrency above one, context beyond 8,192 of the model’s 262,144, multimodal, general task accuracy. Techniques that were measured and lost are in the tree, default off. Contradicting measurements welcome.

