[AMD] Enable AITER MoE for MiniMax-M3 FP4 MI355X vLLM STP#1954
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. 感谢你的贡献!对于 vLLM 与 SGLang,请确保你的 recipe 与官方 vLLM recipes 和/或 SGLang cookbook 保持一致 如果不一致,请先创建一个 PR,之后我们才能将你的单节点 PR 合并到 master 分支。让我们确保文档保持一流水准,使整个 ML 社区都能从你的辛勤工作中受益!谢谢
PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。如果选择重新运行失败的任务,PR 作者有责任确保其最终通过。参见 GitHub 关于重新运行失败任务的文档:https://docs.github.com/en/actions/how-tos/manage-workflow-runs/re-run-workflows-and-jobs#re-running-failed-jobs-in-a-workflow 一般而言,PR 作者应先向相应公司的 CODEOWNERS 请求审阅并获得 PR 批准,然后再请求核心维护者审阅。 如需更多帮助,PR 作者可通过 Slack 联系核心维护者。 |
1 similar comment
|
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. 感谢你的贡献!对于 vLLM 与 SGLang,请确保你的 recipe 与官方 vLLM recipes 和/或 SGLang cookbook 保持一致 如果不一致,请先创建一个 PR,之后我们才能将你的单节点 PR 合并到 master 分支。让我们确保文档保持一流水准,使整个 ML 社区都能从你的辛勤工作中受益!谢谢
PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。如果选择重新运行失败的任务,PR 作者有责任确保其最终通过。参见 GitHub 关于重新运行失败任务的文档:https://docs.github.com/en/actions/how-tos/manage-workflow-runs/re-run-workflows-and-jobs#re-running-failed-jobs-in-a-workflow 一般而言,PR 作者应先向相应公司的 CODEOWNERS 请求审阅并获得 PR 批准,然后再请求核心维护者审阅。 如需更多帮助,PR 作者可通过 Slack 联系核心维护者。 |
Co-authored-by: Cursor <cursoragent@cursor.com>
|
@Fangzhou-Ai can u plz use full sweep enabled label instewad of |
|
you will need to rebase the branch too |
a4cb58d to
488951f
Compare
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28401733219 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28401813836 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28402394893 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28402979293 |
|
Manually triggered a sweep here |
|
@Fangzhou-Ai please use the when u manually do e2e tests, those results arent be promoted to official results so we need to re-run again |
Export AITER MoE env knobs, pass --moe-backend aiter, and pin the latest ROCm nightly on minimaxm3-fp4-mi355x-vllm only. Co-authored-by: Cursor <cursoragent@cursor.com>
55c6c46 to
3c40553
Compare
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28411736691 |
@functionstackx Sure, I have revised the PR to fp4-only and @hongxiayang will submit the fp8 version in a separate PR. |
|
hi @Fangzhou-Ai it seems like the PR validation is failing rn due to cluster issues. i am looking at debugging it rn and will restart ur once it is fixed it seems like an filetype from @YukioZzz branch |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28415017008 |
it seems fixed now +viz @hongxiayang too |
|
waiting for https://github.com/SemiAnalysisAI/InferenceX/actions/runs/28415017008 to finish |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=28415017008 |
|
/reuse-sweep-run 28415017008 |
Summary
VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTS=1in all MiniMax-M3 MI355X single-node vLLM benchmark scripts (MXFP4/MXFP8, STP and EAGLE3 MTP).perf-changelog.yamltrigger to coverminimaxm3-fp4-mi355x-vllm,minimaxm3-fp4-mi355x-vllm-mtp,minimaxm3-fp8-mi355x-vllm, andminimaxm3-fp8-mi355x-vllm-mtp.Why
Upstream vLLM folds the MiniMax-M3 shared expert MLP into the routed grouped GEMM when this flag is set (vllm-project/vllm#46545), reducing per-layer kernel launches on decode-heavy workloads. The optimization is backend-agnostic and does not require the master
VLLM_ROCM_USE_AITERswitch, so it is safe to enable on the existing pinned nightly without turning on the full AITER MoE path.Test plan
bash -non all four MiniMax-M3 MI355X vLLM benchmark scriptspython utils/matrix_logic/generate_sweep_configs.py full-sweep --config-files .github/configs/amd-master.yaml --model-prefix minimaxm3 --framework vllm --runner-type mi355x