[llvm] [AMDGPU] Add DAG mutation to sink consumers of VMEM-pending registers (PR #197452)
Barbara Mitic via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 6 03:09:58 PDT 2026
barbara-amd wrote:
This PR adds a post-RA scheduling DAG mutation that attempts to identify register values whose nearest reaching definition is a VMEM load outside the current region. When such a value is consumed inside the region, the mutation adds ordering edges from in-region VMEM loads to that consumer.
The intent is to keep the consumer below the region's VMEM loads so that a single later wait can cover both the previously outstanding VMEM operation and the loads issued within the region.
Is a scheduling-DAG mutation an acceptable way to model these inter-block/cross-region VMEM dependencies, or is there an alternate preference? From what I've measured so far, the compile-time impact of the mutation is
~0.1%, and it showed some FPS gains across several titles.
https://github.com/llvm/llvm-project/pull/197452
More information about the llvm-commits
mailing list