[AMD] remove accuracy wrong sweep point, bump image to sglang-rocm 20260609#1714
[AMD] remove accuracy wrong sweep point, bump image to sglang-rocm 20260609#1714billishyahao wants to merge 5 commits into
Conversation
|
Thanks for the contribution! For vLLM & SGLang, please ensure that your recipes is similar to the official vLLM recipes and/or the SGLang cookbook If it is not, please create a PR first before we can merge your single node PR into the master branch. Let's ensure that the documentation is first class such that the entire ML community can benefit from your hard work! Thank you 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. If re-running failed jobs is attempted, PR authors are responsible for ensuring it passes. See GitHub's docs on re-running failed jobs: https://docs.github.com/en/actions/how-tos/manage-workflow-runs/re-run-workflows-and-jobs#re-running-failed-jobs-in-a-workflow As a rule of thumb, generally, PR authors should request a review & get a PR approval from the respective companies' CODEOWNERS before requesting a review from core maintainers. If additional help is needed, PR authors can reach out to core maintainers over Slack. |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=27396191956 |
| dsr1-fp4-mi355x-sglang-disagg-mtp: | ||
| image: lmsysorg/sglang-rocm:v0.5.12-rocm720-mi35x-20260519 | ||
| model: amd/DeepSeek-R1-0528-MXFP4-v2 | ||
| model-prefix: dsr1 | ||
| runner: mi355x-disagg | ||
| precision: fp4 | ||
| framework: sglang-disagg | ||
| multinode: true | ||
| disagg: true | ||
| scenarios: | ||
| fixed-seq-len: | ||
| - isl: 1024 | ||
| osl: 1024 | ||
| search-space: |
There was a problem hiding this comment.
hi @billishyahao can u fix the accuracy eval issue instead of just deleting it?
There was a problem hiding this comment.
We are investigating and try to resolve the accuracy issue at the same moment. sgl-project/sglang#27194 . Here we need a clean up to eliminate those incorrect points.
|
|
||
| # 1P2D TP8 | ||
| - spec-decoding: "mtp" | ||
| conc-list: [ 32, 64 ] |
There was a problem hiding this comment.
@billishyahao can u fix conc 64 instead of just removing it?
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=27396415083 |
| # 1P2D TP8 | ||
| - spec-decoding: "mtp" | ||
| conc-list: [ 32, 64 ] | ||
| conc-list: [ 32 ] |
There was a problem hiding this comment.
Duplicate conc 32 sweep entry
Low Severity
After conc-list for the second # 1P2D TP8 block was narrowed from [ 32, 64 ] to [ 32 ], that entry matches the first # 1P2D TP8 block for concurrency 32 (same topology and DECODE_MTP_SIZE=3), so conc 32 is scheduled twice under dsr1-fp4-mi355x-sglang-disagg-8k1k-mtp.
Reviewed by Cursor Bugbot for commit c64a266. Configure here.
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=27396599603 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=27396690440 |
|
Hi @functionstackx for 0609 sgl nightly image, we still observe other regression so we decide to only remove sweep points in this PR. Once regression is resolved, we will bump the image as a follow-up. |
Instead of removing points, can you update once all points are fixed? i.e. the whole curve is accurate? |
|
@billishyahao i am sorry but it doesn't make sense to spend time & effort on removing confirmed points with accuracy issues instead of spending time/effort on fixing the root cause of it |
c64a266 to
4b531d9
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
There are 3 total unresolved issues (including 1 from previous review).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 4b531d9. Configure here.
| MORI_MOE_MAX_INPUT_TOKENS_DECODE=$((MORI_MAX_DISPATCH_TOKENS_DECODE * decode_dp_ranks * 7 / 10)) | ||
| else | ||
| unset MORI_MOE_MAX_INPUT_TOKENS_DECODE | ||
| fi |
There was a problem hiding this comment.
Decode concurrency test wrong
High Severity
The decode guard compares the literal string decode_max_running_requests to 128 instead of "$decode_max_running_requests". The prefill side correctly uses "$prefill_max_running_requests", so the decode MOE override never runs for high bench concurrency and MORI_MOE_MAX_INPUT_TOKENS_DECODE is always unset in this block.
Reviewed by Cursor Bugbot for commit 4b531d9. Configure here.
| MORI_MOE_MAX_INPUT_TOKENS_DECODE=$((MORI_MAX_DISPATCH_TOKENS_DECODE * decode_dp_ranks * 7 / 10)) | ||
| else | ||
| unset MORI_MOE_MAX_INPUT_TOKENS_DECODE | ||
| fi |
There was a problem hiding this comment.
MTP scales unset decode MOE
Medium Severity
When decode concurrency is at most 128, the new branch unsets MORI_MOE_MAX_INPUT_TOKENS_DECODE, but the later MTP block still multiplies that variable. Unset operands in arithmetic expansion become zero, so MTP runs export SGLANG_MORI_MOE_MAX_INPUT_TOKENS=0 instead of omitting the env var like the prefill unset path.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 4b531d9. Configure here.
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=27399274123 |


This patch is to remove accuracy wrong sweep point from dsr1 fp4 sgl disagg on mi355x
Also bumps the
dsr1-fp4-mi355x-sglang-disagg-8k1k-mtpanddsr1-fp4-mi355x-sglang-disagg-1k1k-mtpimages tolmsysorg/sglang-rocm:v0.5.12.post1-rocm720-mi35x-20260609, which carries the initial accuracy bug fixes (tag verified on Docker Hub, pushed 2026-06-09).Note
Medium Risk
Benchmark matrix and disagg server env behavior change for DP+EP runs; the decode-side bash condition in the diff looks syntactically invalid and could break multi-node SGLang jobs if not fixed before merge.
Overview
Trims DSR1 FP4 MI355X SGLang disaggregated MTP benchmark coverage and adjusts MoRI MoE env tuning for low-concurrency DP+EP runs.
In
amd-master.yaml, drops duplicate 1×DEP8 + 1×DEP8 MTP sweep blocks (conc 128 / 64) and removes the entiredsr1-fp4-mi355x-sglang-disagg-mtprecipe so inaccurate sweep points are no longer scheduled.perf-changelog.yamlrecords removing conc 128 and 64 for the DEP8 case ondsr1-fp4-mi355x-sglang-disagg-8k1k-mtp.In
server_sglang.sh,MORI_MOE_MAX_INPUT_TOKENS_*is only set when bench max concurrency is > 128 under combined DP+EP; otherwise those variables are unset (prefill and decode). The decode branch in the diff uses a broken test ("decode_max_running_requests"without$/ missingthen), which would break the script at runtime if merged as shown.Reviewed by Cursor Bugbot for commit 4b531d9. Bugbot is set up for automated code reviews on this repo. Configure here.