[Klaud Cold] Update dsv4-fp4-b300-dynamo-sglang SGLang image to v0.5.19-cu130 (digest-pinned) and refresh the Dynamo pin / 将 dsv4-fp4-b300-dynamo-sglang 的 SGLang 镜像更新为 v0.5.19-cu130(按 digest 固定)并刷新 Dynamo 提交 - #2896
Conversation
…resh Dynamo Replace the removed nightly lmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4 with the digest-pinned release lmsysorg/sglang:v0.5.19-cu130 in the master config and the five srt-slurm recipes it references. Bump the Dynamo source pin to b1c5147f6c9e so the worker imports against the v0.5.19 ServerArgs API, and switch the four DEP recipes from the deprecated SGLANG_OPT_DEEPGEMM_MEGA_MOE_USE_FP4_ACTS / _USE_MXF4_KIND env vars to --enable-w4a4-mxfp4-megamoe so MegaMoE keeps the FP4-activation path. 将已被删除的 nightly 镜像 lmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4 替换为按 digest 固定的正式版 lmsysorg/sglang:v0.5.19-cu130,同时更新主配置和 其引用的五个 srt-slurm 配方。将 Dynamo 源码提交固定到 b1c5147f6c9e,以匹配 v0.5.19 的 ServerArgs API;四个 DEP 配方改用 --enable-w4a4-mxfp4-megamoe 取代已弃用的 SGLANG_OPT_DEEPGEMM_MEGA_MOE_USE_FP4_ACTS / _USE_MXF4_KIND 环境变量,保持 MegaMoE 的 FP4 激活路径。 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 关于重新运行失败任务的文档 |
Summary / 摘要
Refresh the
dsv4-fp4-b300-dynamo-sglangfamily (DeepSeek-V4-Pro FP4, B300, Dynamo + SGLang disaggregated, 8k/1k, no speculative decoding) from the removed nightlylmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4to the digest-pinned releaselmsysorg/sglang:v0.5.19-cu130@sha256:d6e7288627be8b02be88e4bba38e73f6d50e2826869f753c13a4c4385ab3eda9, matching the public framework releasesglang v0.5.19.将
dsv4-fp4-b300-dynamo-sglang系列(DeepSeek-V4-Pro FP4、B300、Dynamo + SGLang 分离式部署、8k/1k、无投机解码)的镜像从已被删除的 nightlylmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4更新为按 digest 固定的正式版lmsysorg/sglang:v0.5.19-cu130@sha256:d6e7288627be8b02be88e4bba38e73f6d50e2826869f753c13a4c4385ab3eda9,与公开的框架版本sglang v0.5.19一致。Files / 文件
configs/nvidia-master.yaml:dsv4-fp4-b300-dynamo-sglang.image(one line).benchmarks/multi_node/srt-slurm-recipes/sglang/deepseek-v4/8k1k/disagg-b300-{1p1d-tp4-tp4,1p1d-dep4-dep8,2p1d-dep4-dep8,4p1d-dep4-dep8,6p1d-dep4-dep8}.yaml:model.containerequals the master image;dynamo.hashbumped from41882ae9b07232eed4850fb1daf8c958abb2556a(2026-07-14) tob1c5147f6c9eb036d98e0e25e2a980375f491e78(2026-09-03); the four DEP recipes replace the deprecatedSGLANG_OPT_DEEPGEMM_MEGA_MOE_USE_FP4_ACTS/SGLANG_OPT_DEEPGEMM_MEGA_MOE_USE_MXF4_KINDenv vars withenable-w4a4-mxfp4-megamoe: trueon prefill and decode.CONFIG_FILEpaths; the-mtpsibling uses separate*-mtp.yamlrecipes and is untouched.CONFIG_FILE引用;-mtp兄弟系列使用独立的*-mtp.yaml配方,未做改动。Why these exact changes / 变更依据
lmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4(dated nightlies are cleaned up), so the family can no longer be reproduced from its pinned image. / 旧标签已不存在:Docker Hub 已无nightly-dev-cu13-20260721-8905cbd4的 manifest(带日期的 nightly 会被清理),该系列已无法从其固定镜像复现。v0.5.19-cu130(pushed 2026-09-04, tag commit59f20bff) is built byrelease-docker.ymlwith the same Dockerfile target (framework_final),CUDA_VERSION=13.0.3,BUILD_TYPE=allandINSTALL_FLASHINFER_JIT_CACHE=1as thenightly-dev-cu13-*images fromrelease-docker-dev.yml; only the source commit differs. The@sha256pin follows the existingdsv4-fp4-gb300-dynamo-sglangrecipes, and the B300 launcher already normalises@in squash-file names. / 镜像谱系一致:v0.5.19-cu130与nightly-dev-cu13-*使用同一 Dockerfile target、CUDA 13.0.3 与构建参数,仅源码提交不同;@sha256固定方式沿用现有dsv4-fp4-gb300-dynamo-sglang配方。ServerArgsno longer resolves it), #36255, #36972 (server_args.get_model_config()/use_mla_backend()removed) and theConfigArgumentMergermove tosglang.srt.utils.server_args_config_parser. Dynamo41882ae9(2026-07-14) predates all of them; fix(sglang): use resolved args after engine init ai-dynamo/dynamo#13905, #14054 and #14234 add the compatibility shims, andb1c5147f6c9e(2026-09-03) is the first commit containing all three. srt-slurm still builds Dynamo from this pinned commit at run time, as before; no engine or container patching is involved. / Dynamo 提交必须随 SGLang 更新:v0.5.19 包含 #35907、#36255、#36972 以及ConfigArgumentMerger模块迁移,旧 Dynamo 提交早于这些改动;dynamo#13905、#14054、#14234 提供兼容层,b1c5147f6c9e是同时包含三者的首个提交。srt-slurm 仍按原有方式从该提交构建 Dynamo,不涉及引擎或容器补丁。SGLANG_OPT_DEEPGEMM_MEGA_MOE_USE_FP4_ACTS/_USE_MXF4_KINDinto warn-only_DeprecatedEnventries;mega_moe.pynow selectsmxf4xmxf4only from--enable-w4a4-mxfp4-megamoe. The flag is added to both prefill and decode of the fourmegamoerecipes so the recipe keeps its FP4-activation path instead of silently falling back to FP8 activations (see dsv4-fp4-b300-sglang-agentic-hicache-mtp: restore MegaMoE FP4 acts, retarget to cluster:b300-dsxe / 恢复 MegaMoE FP4 激活路径,并迁移至 cluster:b300-dsxe #2878 for the single-node sibling).SGLANG_OPT_DEEPGEMM_MEGA_MOE_NUM_MAX_TOKENS_PER_RANKand every other env var used by the recipes are still live in v0.5.19environ.py. / [DeepSeek V4] Add W4A4 MegaMoE server flag sgl-project/sglang#35918 已将上述两个环境变量改为仅告警,FP4 激活路径只能通过--enable-w4a4-mxfp4-megamoe选择;四个megamoe配方的 prefill 与 decode 均加入该标志以保持原行为。其余环境变量在 v0.5.19 中仍然有效。Local checks / 本地检查
generate_sweep_configs.py test-config --config-files configs/nvidia-master.yaml --config-keys dsv4-fp4-b300-dynamo-sglang: same five matrix rows,node-count2/2/2/3/4 unchanged, onlyimagediffers from base.generate_sweep_configs.py full-sweep --config-files configs/nvidia-master.yaml --framework dynamo-sglang: exit 0.pytest utils/matrix_logic/test_generate_sweep_configs.py utils/test_gb300_power_official_contract.py: 121 passed.srtctl dry-run -f <recipe>for all five recipes with the dcgm-power srt-slurm fork pinned byrunners/launch_b300-dsxe.sh: exit 0.python -m utils.klaud check-capacity --cluster b300-dsxe) passed before edits and before each dispatch.Baseline / 基线(published 2026-07-30 / 发布日期 2026-07-30)
Source:
GET /api/v1/benchmarks?model=DeepSeek-V4-Pro&date=2026-07-30&exact=true, filtered tohardware=b300,framework=dynamo-sglang,precision=fp4,spec_method=none,isl=8192,osl=1024,benchmark_type=single_turn, imagelmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4. All eight points come from producer run https://github.com/SemiAnalysisAI/InferenceX/actions/runs/30431262611/attempts/1 (Run Sweep - feat: add DSV4 FP4 B300 Dynamo-SGLang STP configuration, fromGET /api/v1/workflow-info?date=2026-07-30); logical curve snapshot id 2240 is not a producer id. Time metrics are seconds.Published evaluations for the baseline run / 基线运行的已发布评测(
GET /api/v1/evaluations, filtered to the same identity and producer run):Attempts / 尝试记录
lmsysorg/sglang:nightly-dev-cu13-20260721-8905cbd4(Dynamo41882ae9)lmsysorg/sglang:v0.5.19-cu130@sha256:d6e72886…(Dynamob1c5147f) @001e9af8413ed8d323b3cd0dd9e5e3925069e308e2e-tests.ymlfrommain,inputs.ref= measured SHA,klaud-run=true,fail-fast=true)results_bmkartifact is empty (142 bytes).eval_results_allis empty.dsxe-sa-b300-prd0-gpu-00+gpu-01. Ongpu-01the decode worker and frontend containers aborted at start:pyxis: --container-mounts: source path does not exist: /scratch/models/DeepSeek-V4-Pro(node-local staged weights missing on that node). The prefill workers ongpu-00started normally with the new image and began the pinned Dynamo source build before being killed by the teardown. Not attributable to the image, Dynamo pin or recipe flags. / 两次失败的作业都落在gpu-00+gpu-01,gpu-01缺少节点本地模型目录/scratch/models/DeepSeek-V4-Pro,decode 与 frontend 容器无法挂载而启动失败;gpu-00上的 prefill 使用新镜像正常启动。与镜像、Dynamo 提交或配方标志无关。001e9af8413ed8d323b3cd0dd9e5e3925069e308e2e-tests.ymlfrommain,inputs.ref= measured SHA,klaud-run=true,fail-fast=true)results_bmkempty (142 bytes).eval_results_allempty.gpu-00+gpu-01and thegpu-01decode/frontend containers failed withpyxis: --container-mounts: source path does not exist: /scratch/models/DeepSeek-V4-Pro. Slurm job 969 (c2048 eval-only, head nodedsxe-sa-b300-prd0-gpu-11) failed even earlier insrtctlwithFileNotFoundError: Model path does not exist: /scratch/models/DeepSeek-V4-Pro. The launcher documents/scratch/modelsas node-local NVMe with the same layout on every compute node; at leastgpu-01andgpu-11currently lack the DeepSeek-V4-Pro directory. Not attributable to the image, Dynamo pin or recipe flags. / 与尝试 1 同一根因,且出现在两个节点:作业 963 再次分到gpu-00+gpu-01,gpu-01容器挂载失败;作业 969(c2048 仅评测,头节点gpu-11)在srtctl阶段即报Model path does not exist: /scratch/models/DeepSeek-V4-Pro。至少gpu-01与gpu-11缺少节点本地的 DeepSeek-V4-Pro 权重目录。与镜像、Dynamo 提交或配方标志无关。Status / 状态
Stopped: the same failure occurred twice without progress (repair budget used: 1 of 3). Both targeted attempts died before any SGLang server became healthy because
/scratch/models/DeepSeek-V4-Prois missing on at least twob300-dsxecompute nodes (dsxe-sa-b300-prd0-gpu-01,dsxe-sa-b300-prd0-gpu-11). That is cluster weight staging, outside the scope of an image refresh, so no further GPU attempts were made. Both e2e runs (34281233059, 34283344876) are confirmed terminal; every matrix job is failed or cancelled, and the collection jobs completed with empty artifacts.已停止:同一故障连续出现两次且无进展(已使用修复次数:1/3)。 两次目标尝试都在任何 SGLang 服务器就绪之前中止,原因是
b300-dsxe至少两个计算节点(gpu-01、gpu-11)缺少/scratch/models/DeepSeek-V4-Pro。这属于集群权重预置问题,超出镜像刷新范围,因此不再消耗 GPU。两个 e2e 运行(34281233059、34283344876)均已确认结束;所有矩阵作业为失败或已取消,收集作业完成但产物为空。perf-changelog.yamlentry was appended and the PR stays a draft without a sweep label, because no updated-image attempt has passed yet. / 由于尚无通过的目标尝试,未追加perf-changelog.yaml条目,PR 保持草稿且未加 sweep 标签。e2e-tests.ymlwithtest-config --config-files configs/nvidia-master.yaml --config-keys dsv4-fp4-b300-dynamo-sglangat this SHA. The prefill containers ongpu-00started with the new image and began the pinned Dynamo source build before teardown, so the image pull and container start are known to work. / 节点本地权重恢复(或问题节点被下线)后即可重新测试:在此 SHA 上重新分发上述e2e-tests.yml命令。gpu-00上的 prefill 容器已使用新镜像启动并开始构建固定的 Dynamo 源码,说明镜像拉取与容器启动正常。b1c5147fvs SGLang v0.5.19 API,--enable-w4a4-mxfp4-megamoe) has not been exercised on GPU in this PR; it is supported by the source-level evidence above only. / 镜像层面的兼容性(Dynamo 与 SGLang v0.5.19 的 API、--enable-w4a4-mxfp4-megamoe)尚未在 GPU 上实际验证,目前仅有上述源码层面的证据。Limitations / 局限性
🤖 Generated with Claude Code