Plan (user, carried from 09-26): close the DeepSeek perf gap by making weight/ engram I/O node-local NVMe (the way the published references do), EXL3 first, then Aiden SGLang engram staging.
Baseline: 13.3 t/s decode — weights streamed from NAS on every forward.
Reference (coolbho3k, same kit rev 878e0ee): weights+engrams on each host's
local NVMe, ~30.8 t/s.
Staging of models--coolbho3k--DeepSeek-V4.1-Flash-EXL3-3bpw
(+ DSpark drafter) to /home/kilork/hf-local/hub, page15 pack intentionally
not staged (optional +1.4% decode per the release notes; 195 G/node).
The staging itself turned into a six-generation saga — every generation of my mirror script taught a different lesson about the hub layout:
../../blobs/<sha>; on the NAS that link may itself be a symlink into the
2-char hub store (hub/blobs/4d/<sha>). A mirror that materializes only
the link string's own path leaves 51 weight shards resolving through NAS
(and later hardlink/fetch passes re-fetching 130 G+ of data that was
already local).snapshots/<rev>/ on the
NAS — shutil.copytree copies them silently (195 G/node wasted, ENOSPC
on both nodes); copytree(dirs_exist_ok=True) is additionally not
idempotent on symlinks (EEXIST aborts the pass).st_mtime staleness over NFS made a size-only "already copied"
check report a complete mirror while link targets were absent — size+
sampled-content hashing (head+tail reads) is the only check that survives
NFS.Duplicate mapped checkpoint key: …experts.300.w1.trellis).realpath-map through the hub store, then per-blob sample-hash
verify against NAS. Both nodes: 141/141 links local, 0 mismatches
(/tmp/stage-exl3-v9.py, links ok: 141, dangling: 0).EngineCore init failure #1: 51 weight blobs silently wrong (see 4).
Fixed by the verify pass.FileExistsError: /cache/ds41-backend-attestation — the kit's receipt
writer is strict-on-exists (ROOT.mkdir(exist_ok=False) + open('xb')):
receipts are per-run and the stale root/worker.json from yesterday's
bench run was root-owned, so a plain rm -rf as the launcher user failed
and poisoned every restart. The recipe's before_serve now clears all
three receipt roots (ds41-backend-attestation, ds41-combined-ready,
ds41-display-kv) with sudo rm -rf — correct fresh-run semantics.Recipe changes committed: page15 NAS-fallback binds + receipt-clean hook.
The thread /t/382725 continuation (posts #136–#156) points at
MiaAI-Lab/DeepSeek-v4.1-Flash-DGX-Sparks — an SGLang TP4 "production
line" (knapcio's fork + RoCEnante + b12x + prefill SP + gated decode
adapters). Claims that matter: prose decode c1 87.7 tok/s (ours,
aiden16 lane: ~20), prefill 4.0–5.9K tok/s cold, 8M-token KV pin with a
1,011,084-token needle verified, qeval 72/75; stu.miller's independent
A/B (post #142, Sept 15 → Sept 25 builds, same 4 Sparks): prefill 300K
223.4s → 83.8s, decode c1 43.5 → 67.3, tool-eval 89/100, median turn
2.74 s. Repo is real, dense (29 adapters, row_store.cpp, packed engram
shards, sources.manifest), pinned lmsysorg/sglang:dev-dsv41@3dbc3130… +
checkpoint fb2764a5. Claims unverified until benched here.
Their pack_engram.py (≈48 GiB/rank) is exactly our staging sparse-rows
spec — the localization story and this lane converge.
dsv41-flash-4x-mia (live tonight)MiaAI-Lab/DeepSeek-v4.1-Flash-DGX-Sparks@cad252b7d3 into
docker-images/mia-tp4 (build.sh + versions.env; the Dockerfile.canary-roce
fetch stage pulls its pinned trees per runtime/sources.manifest). Image
built on dgx1 in ~15 min — all 17 in-image adapter tests green.DSV41_LAUNCHER=tp4 — every TP4 adapter is gated on sitecustomize's
_tp4_launcher(), which boot.py/start-tp4.sh set via env. Unset = the
gated world silently off and the stock FlashInfer MoE rejects the
576-wide EP1 experts (ValueError … multiples of 128).TP_SIZE/EP_SIZE/DSV41_TP_PAD=0 — the adapters read the world
shape from env, not sglang's flags; tp3_pad.py defaults TP_SIZE to 3,
padded heads 64→96 under our TP4 (24 heads/rank) and the sparse-MLA
kernel aborted warmup. Our launcher injects NODE_RANK only; boot.py
exported these globals and we don't run boot.py.The server is fired up and ready to roll!. Load weight from NAS
took 2060 s (their 170 s is local-NVMe — this is staging P1/P2's case).http://192.168.88.14:30000 (deepseek-v4.1-flash,
1M context, KV pool 5.79M after autotune clamp from our 8M pin).
Decode c1 probe ≈ 29 t/s warm vs 87.7 claimed — explained by unpacked
engram rows read over NFS (their measured worker penalty +11 ms/step) and
no local pack; expect a jump when staging P2 lands.recipes/dsv41-flash-exl3-2x/reports/2026-09-27_053009_exl3-2x-local.*.