[Klaud Cold] Update dsr1-fp4-b200-dynamo-sglang-mtp SGLang image to v0.5.19-cu130 with Dynamo wheel 1.5.0.dev20260910 / 将 dsr1-fp4-b200-dynamo-sglang-mtp 的 SGLang 镜像更新至 v0.5.19-cu130 并搭配 Dynamo wheel 1.5.0.dev20260910 - #3013
Conversation
…u130 Update the master image from lmsysorg/sglang:v0.5.12.post1 to lmsysorg/sglang:v0.5.19-cu130 and match model.container in the nine referenced srt-slurm recipe YAMLs. Switch the coupled Dynamo install from source hash 5b4bc1dd (1.3.0, pinned to SGLang 0.5.12 and importing the removed sglang.srt.server_args_config_parser module) to the published ai-dynamo wheel 1.5.0.dev20260910 (pinned to SGLang 0.5.19), mirrored in the master router.version. Topology, MTP settings, workloads and concurrency points are unchanged. 将主配置镜像从 lmsysorg/sglang:v0.5.12.post1 更新为 lmsysorg/sglang:v0.5.19-cu130,并同步九个被引用的 srt-slurm recipe YAML 的 model.container。配套的 Dynamo 安装源从源码哈希 5b4bc1dd(1.3.0,绑定 SGLang 0.5.12,且导入了已被移除的 sglang.srt.server_args_config_parser 模块)切换为已发布的 ai-dynamo wheel 1.5.0.dev20260910(绑定 SGLang 0.5.19),并在主配置 router.version 中同步。拓扑、MTP 设置、负载与并发点 保持不变。 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Thanks for the contribution! Please reach out to respective companies' CODEOWNER to fill in the latest PR_REVIEW_CHECKLIST.md before pinging core maintainer on Slack for review. In order for the signoff PR check bot to trigger, you must follow the PR_REVIEW_CHECKLIST.md template correctly, including the phrase For PR verification, add the PR authors are responsible for ensuring that after merging, all GitHub Action jobs fully pass. A lot of the time, failures are just flakes and simply re-running the failed jobs will fix it. See GitHub's docs on re-running failed jobs 感谢你的贡献!请联系相应公司的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,然后再在 Slack 上联系核心维护者进行审阅。为了触发 signoff PR 检查机器人,你必须正确遵循 PR_REVIEW_CHECKLIST.md 模板,包括保留英文语句 如需进行 PR 验证,请为此 PR 添加 PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档 |
Initial attempt — failed (engine crash), superseded by Repair 1/5
初次尝试 —— 失败(引擎崩溃),由修复 1/5 接替
|
…p on SGLang v0.5.19 SGLang v0.5.19 enables the NVFP4 GEMM+SwiGLU fusion for DeepSeek shared experts on SM100 (deepseek_v2.py sets _interleave_for_swiglu_fusion), but ModelOptFp4LinearMethod.process_weights_after_loading returns from the flashinfer_trtllm branch before building weight_swiglu_interleaved, so the prefill worker crashes with AttributeError at its first forward. Switch the eight recipes that pinned --fp4-gemm-backend flashinfer_trtllm to the upstream default "auto" (flashinfer_cutedsl on SM100), which reaches the interleave path. MoE runner backend, attention backend, quantization, topology, MTP and concurrency settings are unchanged. SGLang v0.5.19 会在 SM100 上为 DeepSeek 共享专家启用 NVFP4 GEMM+SwiGLU 融合 (deepseek_v2.py 设置 _interleave_for_swiglu_fusion),但 ModelOptFp4LinearMethod.process_weights_after_loading 在 flashinfer_trtllm 分支中提前返回,未构建 weight_swiglu_interleaved,导致 prefill worker 首次前向 即抛出 AttributeError。将八个固定 --fp4-gemm-backend flashinfer_trtllm 的 recipe 切换为上游默认值 "auto"(SM100 上解析为 flashinfer_cutedsl),该路径会 执行交织处理。MoE runner 后端、attention 后端、量化、拓扑、MTP 与并发设置均不变。 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Repair 1/5 — FP4 GEMM backend
|
| Point | Metric | Baseline 2026-07-08 | Repair 1/5 | Delta |
|---|---|---|---|---|
| 4P dep4 / 1D dep8 c2048 | tput/GPU | 8534.8 | 8783.7 | +2.9% |
| 4P dep4 / 1D dep8 c2048 | out/GPU | 2847.2 | 2930.3 | +2.9% |
| 4P dep4 / 1D dep8 c2048 | median TTFT (s) | 60.718 | 55.498 | −8.6% |
| 4P dep4 / 1D dep8 c2048 | median TPOT (ms) | 21.72 | 25.55 | +17.6% |
| 4P dep4 / 1D dep8 c2048 | median E2E (s) | 79.82 | 77.98 | −2.3% |
Other 12 points: N/A (not run; benchmark matrix cancelled by fail-fast after the collection failure below).
- Blocker: that c2048 job then failed in
copy_fixed_sequence_results(runners/slurm_utils.sh:94, shared launcher code onmainsince fix(klaud): enforce completion and improve sweeps / 完善收尾与 sweep 可靠性 #2933) becauseutils/result_filename.pyis resolved through a relativeBASH_SOURCEpath after the launchercd'd intosrt-slurm/; see the milestone. Fail-fast cancelled the eight other benchmark jobs. Klaud Cold cancelled the remaining eval jobs (three running, five queued) at 12:29 UTC after the 1P/1D c32 eval evidence landed, since no further job could produce a collectable benchmark result. - Outcome: engine repair confirmed; candidate closed as readiness-blocked (shared launcher defect outside this family's scope). On retry after the
mainfix, apply the same recipe change (Dynamo wheel1.5.0.dev20260910,fp4-gemm-backend: "auto").
修复 1/5 —— FP4 GEMM 后端 flashinfer_trtllm → auto:引擎已修复,运行因 main 的结果收集阻塞而停止
- Head:PR [Klaud Cold] Update dsr1-fp4-b200-dynamo-sglang-mtp SGLang image to v0.5.19-cu130 with Dynamo wheel 1.5.0.dev20260910 / 将 dsr1-fp4-b200-dynamo-sglang-mtp 的 SGLang 镜像更新至 v0.5.19-cu130 并搭配 Dynamo wheel 1.5.0.dev20260910 #3013 上的
186502243dff7051fb1e2d2baa069f8db7e1d1f0(草稿,无 sweep 标签);镜像不变lmsysorg/sglang:v0.5.19-cu130,Dynamo wheel 不变1.5.0.dev20260910 - 运行:34594623538 —— 与初次尝试相同的
test-config … --trim-conc冒烟,fail-fast,Klaud 后台优先级 - 变更:在固定
fp4-gemm-backend: "flashinfer_trtllm"(prefill 与 decode)的八个 recipe 中,改为fp4-gemm-backend: "auto",即 v0.5.19 的默认值,fp4_utils.py在 SM100 上解析为flashinfer_cutedsl。8k1k_mtp_4p1d_c2048.yaml已使用默认值,未改动。moe-runner-backend flashinfer_trtllm、attention-backend trtllm_mla、quantization modelopt_fp4、拓扑、MTP 与并发均不变。同一镜像上已验证的单节点dsr1-fp4-b200-sglang脚本([Klaud Cold] Update dsr1-fp4-b200-sglang SGLang image to v0.5.19-cu130 / 将 dsr1-fp4-b200-sglang 的 SGLang 镜像更新至 v0.5.19-cu130 #2989)同样保留 FP4 GEMM 后端默认值。 - 为何在范围内:初次尝试的崩溃源于镜像自带引擎的
flashinfer_trtllm稠密 FP4 GEMM 路径跳过了 v0.5.19 DeepSeek 共享专家融合所需的 SwiGLU 交织权重准备。在 recipe YAML 中选择上游支持的后端取值,可让镜像按原样运行,无需任何引擎或启动器补丁。 - 引擎结果:所有 worker 均无
AttributeError。4P dep4 / 1D dep8 c2048 基准(未改动的 recipe,3 节点)完成 SA-Bench,20480/20480 请求;1P tp4 / 1D tp8 c32 eval-only 作业(被修改的 recipe,即此前崩溃的形态)服务健康并通过 gsm8k:exact_match,strict-match0.9568,flexible-extract0.9583(该点已发布基线:0.9553 / 0.9560;校验阈值 0.91)。其余七个形态在取消前未进入前向计算。 - 唯一完成的基准点的冒烟差异(来自服务器日志工件中的 SA-Bench JSON,非流水线结果;单个冒烟点,非完整曲线;tput = 24 GPU 上每 GPU 总 tok/s,out = 8 个 decode GPU 上每 GPU 输出 tok/s),数值见上表。其余 12 个点:N/A(未运行;基准矩阵在下述收集失败后被 fail-fast 取消)。
- 阻塞:该 c2048 作业随后在
copy_fixed_sequence_results(runners/slurm_utils.sh:94,自 fix(klaud): enforce completion and improve sweeps / 完善收尾与 sweep 可靠性 #2933 起位于main的共享启动器代码)失败,原因是启动器cd进入srt-slurm/后仍通过相对BASH_SOURCE路径解析utils/result_filename.py;详见里程碑。fail-fast 取消了其余八个基准作业。在 1P/1D c32 评测证据到达后,Klaud Cold 于 12:29 UTC 取消了剩余评测作业(三个运行中、五个排队中),因为后续作业均无法产出可收集的基准结果。 - 结果:引擎修复已确认;候选以 readiness-blocked 关闭(共享启动器缺陷超出本系列范围)。
main修复后重试时,请应用同样的 recipe 变更(Dynamo wheel1.5.0.dev20260910,fp4-gemm-backend: "auto")。
Milestone — Repair 1/5 engine fix works; benchmark result collection is blocked by shared launcher code on
|
|
Klaud Cold: readiness-blocked. Finishing cleanup; owned child runs will be stopped and checked before closure. Klaud Cold:readiness-blocked。正在完成清理;将先停止并确认自有子运行的状态,再关闭 PR。 |
|
Klaud Cold: readiness-blocked. All owned runs are terminal. Repairs: 1. Runs: 34593285808, 34594623538. PR closed; branch deleted for retry. Klaud Cold:readiness-blocked。所有自有运行均已结束。修复次数:1。运行:34593285808, 34594623538。 PR 已关闭;分支已删除,后续可以重试。 |
Refresh the
dsr1-fp4-b200-dynamo-sglang-mtpdisaggregated MTP family fromlmsysorg/sglang:v0.5.12.post1to the current SGLang releaselmsysorg/sglang:v0.5.19-cu130, switching its coupled Dynamo install from the source hash5b4bc1dd(1.3.0, pinned to SGLang 0.5.12) to the publishedai-dynamowheel1.5.0.dev20260910(pinned to SGLang 0.5.19) in the nine recipe YAMLs and the masterrouter.version. Model, precision, topologies, MTP settings, workloads and concurrency points are unchanged.Baseline
lmsysorg/sglang:v0.5.12.post1(Docker Hub manifest digestsha256:ceaf8b16e02d165143633ac228bbb994a05fe77d7e0526cf035ae4bbf4eacc36, identical tov0.5.12.post1-cu130), Dynamo source hash5b4bc1dd70965017a737c71b19db5a0aeaa88727e0e00cdeb11e580bb6cd0e9fbe92b6a3ef7f3671, changelog PR #2113/api/v1/workflow-info?date=2026-07-08,/api/v1/benchmarks?model=DeepSeek-R1-0528&date=2026-07-08&exact=true&sequence=8k%2F1k(rows filtered to framework=dynamo-sglang, precision=fp4, spec_method=mtp, disagg=true, isl=8192, osl=1024),/api/v1/evaluations?model=DeepSeek-R1-0528&date=2026-07-08em_strict, n=1319, same producer run): 1P/5D c32 0.9568, 1P/3D c64 0.9553, 1P/1D c32 0.9553, 1P/1D dep c512 0.9575, 2P/1D c768 0.9530, 3P/1D c1024 0.9522, 4P/1D c512 0.9538, 4P/1D c2048 0.9545, 5P/1D c2048 0.9530将
dsr1-fp4-b200-dynamo-sglang-mtp分离式 MTP 系列的镜像从lmsysorg/sglang:v0.5.12.post1更新至当前 SGLang 发布版lmsysorg/sglang:v0.5.19-cu130,并在九个 recipe YAML 与主配置的router.version中,将配套的 Dynamo 安装源从源码哈希5b4bc1dd(1.3.0,绑定 SGLang 0.5.12)切换为已发布的ai-dynamowheel1.5.0.dev20260910(绑定 SGLang 0.5.19)。模型、精度、拓扑、MTP 设置、负载与并发点均保持不变。基线
lmsysorg/sglang:v0.5.12.post1(Docker Hub manifest 摘要sha256:ceaf8b16e02d165143633ac228bbb994a05fe77d7e0526cf035ae4bbf4eacc36,与v0.5.12.post1-cu130相同),Dynamo 源码哈希5b4bc1dd70965017a737c71b19db5a0aeaa88727e0e00cdeb11e580bb6cd0e9fbe92b6a3ef7f3671,changelog PR #2113/api/v1/workflow-info?date=2026-07-08,/api/v1/benchmarks?model=DeepSeek-R1-0528&date=2026-07-08&exact=true&sequence=8k%2F1k(按 framework=dynamo-sglang、precision=fp4、spec_method=mtp、disagg=true、isl=8192、osl=1024 过滤),/api/v1/evaluations?model=DeepSeek-R1-0528&date=2026-07-08em_strict,n=1319,同一生产运行):1P/5D c32 0.9568,1P/3D c64 0.9553,1P/1D c32 0.9553,1P/1D dep c512 0.9575,2P/1D c768 0.9530,3P/1D c1024 0.9522,4P/1D c512 0.9538,4P/1D c2048 0.9545,5P/1D c2048 0.9530🤖 Generated with Claude Code