Upstream sync 17/N: merge 3d204dfdaa Revert "[Perf][ROCm] Dual-stream decode with hipgraphs" (#52024) (conflict) - #1264
Merged
roberteg16 merged 4 commits intoSep 10, 2026
Conversation
…#52024) Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com> Co-authored-by: Andreas Karatzas <akaratza@amd.com>
…code with hipgraphs" (vllm-project#52024) (conflict) Conflict-only step. Upstream reverts, one day later, the very commit merged in batch 15 (vllm-project#48223). Accepting the revert while KEEPING the fork's independent gfx11 optimization. The key question was whether upstream's revert is a judgement on the fork's work. It is not, and the dates settle it: 2026-06-26 fork enables shared-expert overlap by default on gfx11 (2e1ce50) 2026-08-12 upstream lands dual-stream decode (47ececb, batch 15) 2026-08-13 upstream reverts it (3d204df, this batch) merge-base confirms the fork's commit is NOT a descendant of upstream's dual-stream commit: the gfx11 work predates it by six weeks and is independent. Upstream is undoing its own 24-hour-old change, not the fork's. Three hunks: 1. __init__ - dropped upstream's DBO Event pairs (they came in with vllm-project#48223 and go out with the revert), kept the fork's _stream_token_threshold block. 2. _should_enable_stream_overlap_heuristic - deleted entirely. This property was introduced by vllm-project#48223, and the gfx11 early-return added to it in batch 15 existed ONLY to stop upstream's new dp_size>1 gate from suppressing the fork's overlap. With the gate reverted the whole property is dead code; keeping the fork's carve-out would have left a method nothing calls. 3. _determine_shared_experts_order - the dangerous one, and it was NOT inside the conflict markers. The revert also narrows the platform predicate: - current_platform.is_cuda_alike() + current_platform.is_cuda() git applied that silently as a clean auto-merge. is_cuda() is CUDA-only (platforms/interface.py:190: self._enum == PlatformEnum.CUDA), whereas is_cuda_alike() admits ROCM (line 222). Left as merged, the aux-stream overlap would never be selected on any ROCm device and the fork's gfx11 optimization would be silently dead - no error, no conflict, and nothing to notice at the next merge. Restored is_cuda_alike(), which is what the fork has carried all along (verified against batch 14's copy of the file), and kept the fork's self._stream_token_threshold in place of upstream's direct envs read. Verified the net effect is exact: the merged shared_experts.py is byte-identical to batch 14's - the state before upstream's dual-stream commit entered the stack - so batch 15 and batch 17 cancel out precisely, leaving the fork's independent work untouched. moe_runner.py, the other file in the revert, merged cleanly. py_compile, ruff check and ruff format pass.
The agent probably made a poor decision here. Three consecutive PRs where one negates another and the third is conflict-free would probably have been handled more efficiently as one lump. If you're keeping a list of potential improvements to your agent instructions, consider this. |
eble-amd
approved these changes
Sep 9, 2026
roberteg16
added this pull request to stack #1288
September 10, 2026 05:59
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.
Context
Seventeenth step of the batched upstream catch-up. Stacked on #<batch 16 PR>.
Conflict-only step.
Merged upstream changes:
3d204dfdaaRevert "[Perf][ROCm] Dual-stream decode with hipgraphs" vllm-project/vllm#52024 — Revert "[Perf][ROCm] Dual-stream decode with hipgraphs"Upstream reverts, one day later, the very commit merged in batch 15. This PR
accepts the revert while keeping the fork's independent gfx11 optimization.
Audit
The question that mattered: is the revert a judgement on the fork's work? It is not, and the dates settle it.
2e1ce506e5)47ececb58e, batch 15)3d204dfdaa, this PR)git merge-base --is-ancestorconfirms the fork's commit is not a descendant of vllm-project#48223: the gfx11 work predates it by six weeks and is independent. Upstream is undoing its own 24-hour-old change.Three hunks. The three-way picture, condensed:
Hunk by hunk:
__init__— dropped upstream's DBOEventpairs (they arrived with [Perf][ROCm] Dual-stream decode with hipgraphs vllm-project/vllm#48223 and leave with the revert); kept the fork's_stream_token_thresholdblock._should_enable_stream_overlap_heuristic— deleted entirely. The property was introduced by [Perf][ROCm] Dual-stream decode with hipgraphs vllm-project/vllm#48223, and the gfx11 early-return added to it in batch 15 existed only to stop upstream'sdp_size > 1gate from suppressing the fork's overlap. With the gate reverted the whole property is dead code; keeping the carve-out would leave a method nothing calls._determine_shared_experts_order— the dangerous one, and it was not inside the conflict markers. The revert also narrows the platform predicate, and git applied it as a clean auto-merge:is_cuda()is CUDA-only (platforms/interface.py:190), whereasis_cuda_alike()admitsROCM(line 222). Left as merged, the aux-streamoverlap would never be selected on any ROCm device and the fork's gfx11
optimization would be silently dead — no error, no conflict, and nothing
to notice at the next merge. Restored
is_cuda_alike(), which is what thefork has carried all along (verified against batch 14's copy), and kept the
fork's
self._stream_token_threshold.Net effect verified exactly: the merged
shared_experts.pyis byte-identical to batch 14's — the state before vllm-project#48223 entered the stack — so batches 15 and 17 cancel out precisely, leaving the fork's independent work untouched. The diffstats corroborate it: batch 15 is +62/−53, batch 17 is +53/−62.moe_runner.py, the other file in the revert, merged cleanly.py_compile,ruff checkandruff formatpass.Merge commit only — do not squash or rebase.
AI assistance was used to prepare this merge.
Test plan
is_cuda_alike→is_cudanarrowing caught outside the conflict markers and reverted; fork's ROCm path preserveddiff)py_compile+ruff check+ruff format