[Spec Decode][ROCm][Perf] Default EAGLE3 Llama drafter to AITER unified attention - #47882
Closed
tanpinsiang wants to merge 1 commit into
Closed
Conversation
Signed-off-by: Tan Pin Siang <tanpinsiang@gmail.com>
tanpinsiang
requested review from
ProExpertProg,
WoosukKwon,
houseroad,
mgoin,
robertgshaw2-redhat,
tlrmchlsmth,
yewentao256 and
youkaichao
as code owners
July 7, 2026 15:21
Collaborator
|
We can use TRITON_ATTN, which do not need to depend on aiter to be installed. |
Contributor
Author
|
Superseded by the MiniMax-M3 recipe update in vllm-project/recipes#615. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR changes the default attention backend for ROCm EAGLE3 Llama draft models from the platform auto-selected
ROCM_ATTNpath toROCM_AITER_UNIFIED_ATTN.Why
On ROCm, EAGLE3 Llama drafter attention currently resolves to
ROCM_ATTNby default. For MiniMax-M3 EAGLE3 serving, that path is much slower than the available AITER unified-attention backend. The default should select the faster backend for this drafter family while still preserving explicit user overrides inspeculative_config.attention_backend.ROCM_AITER_UNIFIED_ATTNis also the most robust fast option here:ROCM_AITER_FAdoes not currently work for this stack because MiniMax-M3 requires block size128, while the backend only advertises[16, 32]. Forcing128experimentally allowed startup but failed at runtime in AITERpaged_attention_v1, so it is not a valid replacement.Benchmark
Benchmark stack: upstream
main+ #47391 + this PR.The code change in this PR does not depend on #47391, but the benchmark includes #47391 so MiniMax-M3 EAGLE3 acceptance and throughput are measured on the representative stack.
Note: These benchmark numbers were collected before recipes#621 clarified the nested
text_configoverride. The command below is updated to the working form; the benchmark comparison remains comparable because all rows used the same config, but absolute tok/s should be rerun with nested index-topk reuse.Server setup:
amd/MiniMax-M3-MXFP4Inferact/MiniMax-M3-EAGLE3TRITON_ATTNfp8ROCM_ATTNROCM_ATTNTRITON_ATTNROCM_AITER_FAROCM_AITER_UNIFIED_ATTNROCM_AITER_UNIFIED_ATTNis 3.47x the currentROCM_ATTNdefault and slightly faster thanTRITON_ATTNon this workload.Test command