Qwen3.8-Flash-Next W4A16-AutoRound DGX Spark vLLM MTP4 Iter7g
00 upvotes — sign in to vote sign in to votecommunity Community submission — verify on your own hardware.
recipe by kyaky↗ · listed by localai-recipes
revision r4 · commit dc8982acab · updated 21 h ago · license CC-BY-4.0
chat code vision mtp-speculative nvme-ple dgx-spark gb10 sm121 vllm autoround block-verification deterministic-floor kyaky w4a16
Recipe by kyaky. Qwen3.8-Flash-Next W4A16-AutoRound hybrid (INT4 experts + FP8 side layers + INT8 head; 51B-token n-gram PLE table on NVMe mmap) on one DGX Spark (GB10, 121 GB unified memory) on a verified-deterministic vLLM floor (image qwen38-flash-dgx:iter7g-20261015 on the digest-pinned vllm/vllm-openai:qwen38-flash-next base): MoE align arrival-order shim, drafter-Marlin atomicAdd fix, pinned triton config, compile-cache mount. Measured line v19a-w5 = MTP=4 window-5 block verification: 76.8 tok/s single-stream, 261.2 tok/s aggregate at 8 streams (+9.2% N1 / +4.8% N8 over MTP=3, two boots per arm, same image). Promoted serving line v20-fp8: fp8 KV cache on a 24 GB pool at native 262,144 context, 1,291,120-token capacity. Chinese +31.3% via a 25,862-id (39.5%) Han draft-vocab rebalance (prose-zhen 34.8 to 45.7 tok/s). Stochastic-correctness gate 37/37 vs bit-exact fp64 oracle; per-round raw data + scripts ship in-repo; copy-agentic-1 failure disclosed.
Launch command
podman run -d --name qwen38-flash --device /dev/nvidia0 --device /dev/nvidiactl --device /dev/nvidia-uvm --userns=keep-id -v '$HOME/gb10-podman-root:/root' --ipc=host -p 8000:8000 -v '$HOME/models/Qwen3.8-Flash-Next-W4A16-AutoRound-hybrid-mtpdense-g32:/model:ro' -v '$HOME/models/ple-table-fp8:/ple-table:ro' -v '$HOME/.cache/qwen38-v16b/draft-vocab-ids-K65536.txt:/draft-vocab/ids.txt:ro' -v '$HOME/.cache/qwen38-compile:/root/.cache' -e 'TRITON_LIBCUDA_PATH=<driver lib dir>' -e VLLM_PLE_MMAP=1 -e VLLM_PLE_MMAP_WORKERS=32 -e VLLM_PLE_MMAP_PREWARM=1 -e VLLM_PLE_MMAP_MADV_RANDOM=1 -e VLLM_MOE_ALIGN_STABLESORT=1 -e VLLM_MARLIN_USE_ATOMIC_ADD=0 -e VLLM_TRITON_FORCE_FIRST_CONFIG=1 -e VLLM_FP8_HYBRID=1 -e VLLM_USE_DEEP_GEMM=0 -e VLLM_USE_FLASHINFER_SAMPLER=1 -e CUDA_LAUNCH_BLOCKING=0 -e VLLM_MTP_DRAFT_VOCAB=/draft-vocab/ids.txt -e VLLM_DRAFTER_EXPERTS_FP8=1 -e VLLM_LOAD_CLONE=1 -e VLLM_MOE_NAME_INDEX=1 -e VLLM_LOAD_EMBED_CHUNK=1 -e VLLM_QSA_DET_TOPK=1 qwen38-flash-dgx:fp8kv-promo-20261024 /model --served-model-name qwen --host 0.0.0.0 --port 8000 --load-format fastsafetensors --max-model-len 262144 --max-num-seqs 8 --gpu-memory-utilization 0.01 --enable-prefix-caching --enable-chunked-prefill --max-num-batched-tokens 8192 -cc.cudagraph_mode=PIECEWISE '-cc.splitting_ops=["vllm::unified_attention_with_output","vllm::unified_mla_attention_with_output","vllm::mamba_mixer2","vllm::mamba_mixer","vllm::short_conv","vllm::qwen3_8_flash_next_ple_short_conv","vllm::qwen3_8_flash_next_qsa_with_output","vllm::linear_attention","vllm::qwen_gdn_attention_core","vllm::qwen_gdn_attention_core_fused_norm_packed","vllm::sparse_attn_indexer","vllm::ple_mmap_lookup"]' --no-enable-flashinfer-autotune --kv-cache-dtype fp8 --no-async-scheduling --kv-cache-memory-bytes 24g --enable-prompt-tokens-details --enable-auto-tool-choice --tool-call-parser qwen3_xml --reasoning-parser qwen3 --speculative-config '{"method":"mtp","num_speculative_tokens":4,"rejection_sample_method":"block","draft_sample_method":"probabilistic"}'runtime
env: 'launch.sh sources recipe/config/v20-fp8/env under env -i (cleared environment); edit the env file, do not export'
notes: 'Promoted serving line v20-fp8 transcribed verbatim from recipe/config/v20-fp8/{env,launch.sh,serve.sh,image} @ 2ddeb883fe692e3eee1840655a3df7de8eddf87d: the v19a-w5 promoted script with EXACTLY two functional edits (recorded upstream in runs/2026-10-17-qsa-fp8-kv/od4/config-diff.md) -- --kv-cache-dtype auto->fp8 and --no-async-scheduling added (D-021 pin-hygiene check-6 closure; the pinned engine otherwise auto-resolves async_scheduling TRUE) -- plus KV_BYTES 16g->24g and image qwen38-flash-dgx:fp8kv-promo-20261024 (local podman tag; not built by the repo build chain). The fp8 pool normalizes to 1,291,120 KV tokens at native 262,144. launch.sh inspects the image via podman (docker cannot see the local tag, 2a3cde5); the whole serving launch path is rootless podman (65b39aa). Defaults when serve.sh is inspected directly: MTP=3, PORT 18300, TOOL_PARSER qwen3_coder - the promoted env overrides to MTP=4, port 8000, qwen3_xml. Deterministic floor unchanged: MOE_ALIGN_STABLESORT=1 + MARLIN_ATOMIC_ADD=0 + TRITON_FORCE_FIRST_CONFIG=1 + the persistent ~/.cache/qwen38-compile mount. Driver-lib set must include libnvidia-ptxjitcompiler.so.1 or engine init fails on first JIT compile (mounted by launch.sh). Requires ~130 GB NVMe for checkpoint + FP8 PLE table (separate Saren/Qwen3.8-Flash-Next-ple-table-fp8 @ 50511b0a41aa1d34b8beb7e5d4bb06a0b650dc14, served read-only at /ple-table) plus ~4.8 GiB drafter shard data. podman<5 + nvidia-ctk>=1.20 CDI additionalGids strip workaround documented in repo Troubleshooting. Published throughput numbers remain the v19a-w5 bf16-line measurement (image qwen38-flash-dgx:iter7g-20261015); the v20-fp8 stream-curve re-measurement is pending upstream.'
Use this recipe with your agent
Paste this into any agent chat — it fetches and applies the recipe:
Fetch https://localairecipes.com/api/v1/recipes/qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g.json and apply the inference recipe it describes (engine flags, model, quant, context) to my setup. Ask before overwriting any existing config.Or fetch it directly:
curl -fsSL https://localairecipes.com/api/v1/recipes/qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g.jsonDownloads
- Weights https://huggingface.co/Saren/Qwen3.8-Flash-Next-W4A16-AutoRound-hybridrevision 8b82f0b7abe3d1150a7827d298c75e86267636ae (W4A16-AutoRound hybrid: INT4 experts + FP8 side layers + INT8 head)
- Weights https://huggingface.co/Saren/Qwen3.8-Flash-Next-ple-table-fp8revision 50511b0a41aa1d34b8beb7e5d4bb06a0b650dc14 (FP8 PLE table, 51B-token n-gram index, NVMe mmap at /ple-table)
- Drafter https://github.com/kyaky/qwen3.8-flash-next-gb10-ultrafast/blob/main/recipe/build/model/build.shT80 dense-MTP g32 drafter directory built by recipe/build/model/build.sh (nine bf16 drafter modules at group size 32, ~4.8 GiB new bytes, reference report in repo)
- Engine image https://hub.docker.com/r/vllm/vllm-openaibase vllm/vllm-openai @ sha256:fc120ece0a388cc0aa1caad4a9f1cd92113484ab7ec2fd0efadd62585be05bf8 -> measured image qwen38-flash-dgx:iter7g-20261015; promoted v20-fp8 image qwen38-flash-dgx:fp8kv-promo-20261024
- Reference https://github.com/kyaky/qwen3.8-flash-next-gb10-ultrafast2ddeb883fe... - recipe/config/v20-fp8 promoted fp8 line + v19a-w5 measured line, build chain iter6c..iter7g, docs/benchmarks/2026-10-15-w54-ab raw JSON + boot fingerprints
Revision notes
Ingested from GitHub repo kyaky/qwen3.8-flash-next-gb10-ultrafast @ 0d3469706696015992959a12b059b02b75100744 (lar-scout ingest, kanban t_296a1f5d, 2026-10-16). Recipe Apache-2.0. Attribution: recipe by kyaky; submitter/listed_by localai-recipes. One recorded failure disclosed by the author: copy-agentic-1 fails at rep 2 on three independent W5 boots (attribution unresolved, reproduction queued; W4 0/30). Quality on same boots: code-edit 25/25 verified, MGSM 16/16 both arms, fixed-suite 93.1-93.3% on the v16b line. First live run of the owner-shaped tool-loop suite scored 29/50 (author-baselined observation, not an acceptance gate). perf note: N8 headline reported in all three accountings per README. Pin refreshed 2026-10-28 to 2ddeb883fe692e3eee1840655a3df7de8eddf87d (verified live origin/main HEAD via git ls-remote; kanban t_c3370f04, owner go t_eab4d745, preprod only). Pin honesty: the previous pin 0d3469706696015992959a12b059b02b75100744 was ORPHANED by an upstream history rewrite (sha still reachable via the GitHub API with message 'benchmarks: the stateful reproduction ran...'; absent from all refs after a full fetch), so no ancestry diff exists old-pin..new-pin - the delta was built via GitHub API per-file compare, not git log. Launch re-transcribed from recipe/config/v20-fp8/{env,launch.sh,serve.sh,image} @ 2ddeb883fe: serving line promoted v19a-w5->v20-fp8 (55199a4/2ddeb88) - image qwen38-flash-dgx:fp8kv-promo-20261024, --kv-cache-dtype auto->fp8, --kv-cache-memory-bytes 16g->24g (fp8 KV native 262k, 1,291,120-token capacity), +--no-async-scheduling (D-021 check-6 closure); launch path is rootless podman (65b39aa; launcher inspects via podman, 2a3cde5). Throughput record stays attributed to the measured v19a-w5 bf16 line; all 7 perf points preserved 7/7 unchanged, still grounded in docs/benchmarks/2026-10-15-w54-ab/*.json (unchanged at the pin) and the 37/37 gate claim in README + recipe/build/image/tests/blockverifier_gate_results.json (verdict gate_passed; results file unchanged at the pin, test file touched only by privacy-scan commits). Privacy: the site publishes no privacy/telemetry claim for this slug, so the upstream removal of the CI privacy grep step (98bc1c2, owner completed privacy review, donor-pattern false positives) removes no site claim. Hero: repo now ships docs/assets/hero-banner-v8.png + .license (Apache-2.0, 26f3d32); the site embeds no hero image for this slug - recorded, no site change. CI-only files (.shellcheckrc, .github/workflows/checks.yml, AGENTS.md): no site impact.
Revision history
- dc8982acab recipe: update qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g (r4: /engine) 15 h ago diff
- 737db79cc1 recipe: update qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g (r3: /engine, /artifacts, /config/launch, /config/runtime, /summary, /notes — prod sync of QC-approved preprod r4 5b9f6c3 45 h ago diff
- 50cca6e241 recipe: update qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g (r3: /max_context_len, /storage_requirements) 11 d ago diff
- 33d193615e recipe: update qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g (r2: /max_context_len) 11 d ago diff
- e75e1103a5 recipe: create qwen3-8-flash-next-w4a16-autoround-dgx-spark-vllm-mtp4-iter7g 15 d ago
Fork
Sign in to fork this recipe — a fork is your own copy; you own it and only you can update it.