[all-commits] [llvm/llvm-project] 6e512f: [AMDGPU] Measure MFMA read hazards at each producer
Michael Halkenhäuser via All-commits
all-commits at lists.llvm.org
Wed Sep 30 08:28:29 PDT 2026
Branch: refs/heads/users/mhalk/fix/amdgpu-mfma-hazard-window-pairing
Home: https://github.com/llvm/llvm-project
Commit: 6e512f722e4a881efadd4809b0d61df78b409286
https://github.com/llvm/llvm-project/commit/6e512f722e4a881efadd4809b0d61df78b409286
Author: Michael Halkenhaeuser <MichaelGerald.Halkenhauser at amd.com>
Date: 2026-09-30 (Wed, 30 Sep 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx90a.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
Log Message:
-----------
[AMDGPU] Measure MFMA read hazards at each producer
Introduce more sophisticated traversal to avoid the following traps:
- order-dependent traversal and discarding seen BBs despite shorter path
- mis-matching distance and window of different producers
Record the best distance per BB instead of a visited flag and sweep the
arrivals in nondecreasing distance (bucket queue). This pairs producers
with their actual distance to a consumer in one go.
Fixed scenarios:
- MFMA reading an MFMA result as srcA, srcB or srcC
- VALU, memory or export instruction reading an MFMA result
AI-assisted.
Commit: 2445b6dc3d6194f85b31b5fda3146db229e05531
https://github.com/llvm/llvm-project/commit/2445b6dc3d6194f85b31b5fda3146db229e05531
Author: Michael Halkenhaeuser <MichaelGerald.Halkenhauser at amd.com>
Date: 2026-09-30 (Wed, 30 Sep 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx90a.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
Log Message:
-----------
[AMDGPU] Measure MFMA overwrite hazards at each instruction
Apply previously established processing to:
- VALU overwriting an MFMA result
- VALU overwriting a register an MFMA took as srcC
AI-assisted.
Commit: c421b9aec137001a26a73532be62f561ab2b80fa
https://github.com/llvm/llvm-project/commit/c421b9aec137001a26a73532be62f561ab2b80fa
Author: Michael Halkenhaeuser <MichaelGerald.Halkenhauser at amd.com>
Date: 2026-09-30 (Wed, 30 Sep 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx90a.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
Log Message:
-----------
fixup! [AMDGPU] Measure MFMA read hazards at each producer
Reword the comments of the two tests where an exact srcC write must not
hide an earlier partial one: name the producers, give the nearer one's
window, and keep the farther one's window apart from the padding it
leaves. On gfx940+ the exact write now has a window of its own, since
two different MFMAs sharing an accumulator need wait states.
AI-assisted.
Compare: https://github.com/llvm/llvm-project/compare/ffb5c317edd5...c421b9aec137
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list