Tony shipped a real DFlash2 overlay. We ran it on the same two GB10 Sparks that were serving GLM-5.3-Flash through 0xSero's SGLang stack. This is the recipe that actually came up, the numbers we measured against it, and who did the work.
Almost none of this stack is ours. We pinned other people's artifacts, added Funland-specific launch hygiene, and measured.
tonyd2wild, with Knox) — the DFlash2 overlay, KV-layout patches, C1–C6 harness, and the 3 GiB KV pin. HEAD we built: ccc5a78e66a120abaa3aeb9a4e61df86b3b05655. His published mixed C1 was 35.1 tok/s; our copy of his harness landed 41.5.7d74cdd881ed7e32c31175984a67823127b66cfe. Licensed CC BY-NC-ND 4.0. This post is a personal evaluation, not a commercial service.All Funland numbers below were taken August 27–28, 2026 against the live :8888 endpoint after this bind. SGLang comparison numbers are from the previous night's published post, not a same-window A/B.
Loopback on Spark1, 2 rounds, 400 max tokens, unique prompts, prefix-cache defeated. Zero failures.
| Concurrency | Aggregate tok/s | Per-stream tok/s | Mean wall | Accept ratio |
|---|---|---|---|---|
| C1 | 41.5 | 41.5 | 9.6s | 0.557 |
| C2 | 43.4 | 25.5 | 18.4s | 0.417 |
| C3 | 51.4 | 22.5 | 23.4s | 0.433 |
| C4 | 50.3 | 18.3 | 31.8s | 0.424 |
| C5 | 53.9 | 16.9 | 35.8s | 0.437 |
| C6 | 54.2 | 14.8 | 44.2s | 0.436 |
| Fixture | DFlash2 (this night) | SGLang baseline (Aug 27 post) |
|---|---|---|
| Mixed C1 (Tony harness) | 41.5 tok/s | — |
| JSON | 55.3 tok/s median | 35.7 tok/s structured |
| Code | 54.9 tok/s median | — |
| Count 1–200 | 67.7 tok/s median | — |
| Agent-battery JSON | 46.3 tok/s incl. TTFT | 35.7 tok/s |
| Agent-battery prose | 23.0 tok/s incl. TTFT | 24.7 tok/s |
| Longer prose | 21.3 tok/s median | 24.7 tok/s |
Speculative decoding was actually on: 6,822 accepted / 11,704 drafted over the five-fixture window, 58.3% accept. Tony's 46.9 tok/s headline was a high-accept code-plus-explanation prompt, not this mixed set. We did not republish that number as ours.
| Gate | Result |
|---|---|
| Health + model contract | PASS · glm-5.3-flash · max_model_len 262,144 |
| Exact target answer | PASS |
| Real-image vision | PASS (solid red PNG → “red”) |
| Parallel tool calls | PASS (2 calls) |
| Error recovery + chain | PASS |
| 20-hop tool gauntlet | 20/20 in 33s |
| 3× concurrent ~18.4K prefills | PASS, all needles HIT |
| Hermes CLI | ROUTE_OK / FINAL_ROUTE_OK |
| Needle rung | Prompt tokens | Wall | Effective prefill | Needle |
|---|---|---|---|---|
| 32K | 24,026 | 17s | 1,429 tok/s | HIT |
| 50K | 37,525 | 26s | 1,431 tok/s | HIT |
| 80K | 60,025 | 48s | 1,251 tok/s | HIT |
| 100K | 75,024 | 59s | 1,277 tok/s | HIT |
| 131K | 98,276 | 69s | 1,432 tok/s | HIT |
Configured context is 262K. The fp8 pool is only 310,292 tokens, so 262K is about 1.18 concurrent full-length requests. Deep multi-turn at advertised length is thin. Retrieval through 98K worked on this bind.
Do not run Tony's older launch-glm53-vllm-tp2.sh. At this SHA that launcher is still the stale MTP/v9 path. The DFlash2 path is the overlay image plus explicit dflash flags.
| What | Exact value |
|---|---|
| Tony tree | ccc5a78e66a120abaa3aeb9a4e61df86b3b05655 |
| Drafter repo | incoai/GLM-5.3-Flash-DFlash2 |
| Drafter revision | 7d74cdd881ed7e32c31175984a67823127b66cfe |
| Drafter weights SHA-256 | 8931dc522be0aa31760a7463f8d2f8044fa3e6d40be2e87aa08e9fd17bfd6683 |
| Target | existing LibertAIDAI NVFP4 snapshot (same as SGLang) |
| Base image | local glm53-flash-sm121:v8, tagged radixark/vllm-glm53-flash:sm121-v8 for the overlay FROM |
| Candidate image | funland/glm53-dflash2:ccc5a78e · sha256:5be2a57fe832d1701cc5a3d6c90edfc3509bc6f931344690180ee90ca188b07c |
| KV pin | --kv-cache-memory 3221225472 (3 GiB) |
| Spec | {"method":"dflash","model":"/models/dflash2-draft","num_speculative_tokens":7} |
git clone https://github.com/tonyd2wild/GLM-5.3-Flash-NVFP4-2x-DGX-Spark
git checkout ccc5a78e66a120abaa3aeb9a4e61df86b3b05655
hf download incoai/GLM-5.3-Flash-DFlash2 \
--revision 7d74cdd881ed7e32c31175984a67823127b66cfe
docker tag glm53-flash-sm121:v8 radixark/vllm-glm53-flash:sm121-v8
docker build --pull=false overlay-dflash2 -t funland/glm53-dflash2:ccc5a78e
# then docker save | docker load onto the worker
# require identical image IDs on both ranks before launch
The overlay copies Tony's DFlash2 Python into vLLM and patches registry, GLM auxiliary-layer capture, KV page LCM, and drafter grouping. First-boot simulation of the unpatched v8 image reproduced the documented KV-layout rejection; the overlay is the thing that made DFlash boot.
vllm serve /models/glm53-target \
--served-model-name glm-5.3-flash \
--host 0.0.0.0 --port 8888 \
--trust-remote-code --load-format safetensors \
--tensor-parallel-size 2 \
--gpu-memory-utilization 0.85 \
--max-model-len 262144 \
--max-num-seqs 6 \
--block-size 2304 \
--moe-backend marlin \
--speculative-config '{"method":"dflash","model":"/models/dflash2-draft","num_speculative_tokens":7}' \
--kv-cache-dtype fp8_e4m3 \
--kv-cache-memory 3221225472 \
--enforce-eager \
--chat-template /opt/glm53/chat-template-mm.jinja \
--tool-call-parser glm47 --enable-auto-tool-choice \
--reasoning-parser glm45 \
--default-chat-template-kwargs '{"enable_thinking":false}' \
--distributed-executor-backend mp \
--nnodes 2 --node-rank 0 \
--master-addr 10.0.0.1 --master-port 29521
Worker: same image, --node-rank 1 --headless, start before the head. Fabric is ConnectX-7 RoCE on bond0 / 10.0.0.0/24. Cold bind was ~19 minutes including target load, drafter load, TileLang, and autotune.
:8888 if the port is dark. Ours resurrected a 108 GiB stale stack last week./dev/shm torch/psm files, drop page cache, confirm ~115 GiB available./var/cache/... was root-owned here and aborted launch before either rank started.--enforce-eager. That is the measured contract, not a future graph-mode claim.restart=no. The old inference watchdog stays commented so it cannot revive SGLang on top of a healthy candidate.0xSero image and compose remain on both Sparks:
ghcr.io/0xsero/glm-5.3-flash-sglang-sm121@sha256:f9ac60ba4071f8acd64f0f3c074aca308f6d659405fee46fc8031489a1e8b19b
On Funland the restore entry point is ~/glm53-dflash2-canary-20260827/restore-sero.sh manual. We armed a 70-minute systemd deadman before the outage, then disarmed it after gates and Hermes FINAL_ROUTE_OK.
Leave DFlash2 up for agentic and structured traffic. It is faster than our SGLang GLM lane on mixed/code/JSON, it still does tools and vision, and 98K retrieval held. Do not sell it as a universal speed win: prose lost a little, and the KV pool is a third of yesterday's. That is an honest swap, not a miracle.
Provenance: Funland measurements, August 27–28, 2026, 2× DGX Spark GB10, ConnectX-7 RoCE. Candidate image sha256:5be2a57fe832d1701cc5a3d6c90edfc3509bc6f931344690180ee90ca188b07c. Tony SHA ccc5a78e66a1. Inco drafter 7d74cdd8. SGLang comparison figures are from the August 27 post, not a paired rerun after this swap.