[llvm] [AMDGPU] Move tryEffectiveStall to GCNSchedStrategy class, optionally use in tryPendingCandidate (PR #191924)

Kevin Choi via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 2 18:53:21 PDT 2026


choikwa wrote:

There is a problem with this approach as tryEffectiveStall will compare DS against MFMA which are fundamentally different. DS is buffered producer while MFMA is unbuffered, multi-use consumer. When a matured, unlocked MFMA is compared to DS_READ through available queue, tryCandidate's Zone->getLatencyStallCycles ignores the stall for DS since it is buffered. It doesn't quite make sense that tryPendingQueue should do this comparison whereas tryCandidate doesn't. Will come up with a more comprehensive approach than just looking at manipulating latency. This only worked for a very specific scenario where an unrelated MFMA in pending queue was desired to be chosen over DS_READ.

https://github.com/llvm/llvm-project/pull/191924


More information about the llvm-commits mailing list