Skip to content

[AMD][MI35X] Serve Qwen3.5 MXFP4-AttnFP8-V2 on the MI355X SGLang single-node arms - #2695

Open
yichiche wants to merge 1 commit into
mainfrom
amd/qwen3.5-fp4-attnfp8-mi355x-sglang
Open

[AMD][MI35X] Serve Qwen3.5 MXFP4-AttnFP8-V2 on the MI355X SGLang single-node arms#2695
yichiche wants to merge 1 commit into
mainfrom
amd/qwen3.5-fp4-attnfp8-mi355x-sglang

Conversation

@yichiche

@yichiche yichiche commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Motivation

amd/Qwen3.5-397B-A17B-MXFP4-AttnFP8-V2 is a newer AMD checkpoint of Qwen3.5-397B-A17B that keeps MXFP4 weights and additionally runs attention in FP8. It supersedes amd/Qwen3.5-397B-A17B-MXFP4 as the checkpoint we want the MI355X SGLang single-node submission to represent.

Modifications

In configs/amd-master.yaml, change model on qwen3.5-fp4-mi355x-sglang and qwen3.5-fp4-mi355x-sglang-mtp:

  • amd/Qwen3.5-397B-A17B-MXFP4amd/Qwen3.5-397B-A17B-MXFP4-AttnFP8-V2

That is the whole change. The image stays at lmsysorg/sglang-rocm:v0.5.16-rocm720-mi35x-20260730, and the TP and concurrency search space, isl/osl, runner, precision, and framework are untouched. No benchmark script is modified — runners/launch_mi355x-amds.sh resolves the launch script from model-prefix, precision, and framework, so both arms keep using benchmarks/single_node/fixed_seq_len/qwen3.5_fp4_mi355x.sh and qwen3.5_fp4_mi355x_mtp.sh, with the checkpoint arriving through $MODEL.

The qwen3.5-fp4-mi355x-atom arm still serves amd/Qwen3.5-397B-A17B-MXFP4 and is deliberately left alone.

Append the corresponding perf-changelog.yaml trigger covering both config keys.

Accuracy Tests

No accuracy-affecting logic changes in this repo. The submission now measures a different published checkpoint; correctness of the checkpoint itself is upstream of this repo. The generated matrix keeps its usual eval rows for both arms.

Benchmarking

Repo validation was run locally:

  • python -m pytest utils/matrix_logic/ -q → 232 passed.
  • python utils/matrix_logic/generate_sweep_configs.py full-sweep --config-files configs/amd-master.yaml --model-prefix qwen3.5 --precision fp4 --runner-type mi355x --scenario-type fixed-seq-len → 29 configs: 19 on amd/Qwen3.5-397B-A17B-MXFP4-AttnFP8-V2 at the unchanged v0.5.16-rocm720-mi35x-20260730 image, plus the 10 unchanged ATOM configs still on amd/Qwen3.5-397B-A17B-MXFP4.

End-to-end MI355X numbers will come from the sweep triggered on this PR (full-sweep-fail-fast). Because the checkpoint changes, the resulting numbers are not a like-for-like continuation of the previous MXFP4 series on these two config keys.

Conflicts

#2640 touches these same two config keys: it bumps the image to v0.5.17-rocm720-mi35x-20260818 and adds --kv-cache-dtype fp8_e4m3 plus --disable-shared-experts-fusion to the launch scripts. The two PRs change different lines of the same config blocks, so whichever lands first the other needs a rebase, but the changes are complementary rather than contradictory.

@github-actions

Copy link
Copy Markdown
Contributor

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 As a PR reviewer and CODEOWNER, I have reviewed this and have.

For PR verification, add the full-sweep-fail-fast label (strongly recommended) to this PR — the benchmark sweep only runs on labeled PRs. Use full-sweep-enabled only if you need matrix jobs to keep running past a failure.

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 模板,包括保留英文语句 As a PR reviewer and CODEOWNER, I have reviewed this and have

如需进行 PR 验证,请为此 PR 添加 full-sweep-fail-fast 标签(强烈推荐)— 基准测试 sweep 仅在带有标签的 PR 上运行。仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled

PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档

1 similar comment
@github-actions

Copy link
Copy Markdown
Contributor

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 As a PR reviewer and CODEOWNER, I have reviewed this and have.

For PR verification, add the full-sweep-fail-fast label (strongly recommended) to this PR — the benchmark sweep only runs on labeled PRs. Use full-sweep-enabled only if you need matrix jobs to keep running past a failure.

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 模板,包括保留英文语句 As a PR reviewer and CODEOWNER, I have reviewed this and have

如需进行 PR 验证,请为此 PR 添加 full-sweep-fail-fast 标签(强烈推荐)— 基准测试 sweep 仅在带有标签的 PR 上运行。仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled

PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档

Comment thread perf-changelog.yaml
@yichiche yichiche changed the title [AMD][MI35X] Add the Qwen3.5 MXFP4-AttnFP8-V2 MI355X SGLang single-node submission [AMD][MI35X] Serve Qwen3.5 MXFP4-AttnFP8-V2 on the MI355X SGLang single-node arms Aug 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

2 similar comments
@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

…le-node arms

Switch qwen3.5-fp4-mi355x-sglang and qwen3.5-fp4-mi355x-sglang-mtp from amd/Qwen3.5-397B-A17B-MXFP4 to amd/Qwen3.5-397B-A17B-MXFP4-AttnFP8-V2. The image, search space, runner, precision, and launch scripts are unchanged.
@yichiche
yichiche force-pushed the amd/qwen3.5-fp4-attnfp8-mi355x-sglang branch from 5e9a889 to 453dae8 Compare August 20, 2026 16:08
@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant