[all-commits] [llvm/llvm-project] 04c6e4: [AMDGPU] Add ML-oriented coexec scheduler selectio...
Jeffrey Byrnes via All-commits
all-commits at lists.llvm.org
Mon Mar 9 16:27:58 PDT 2026
Branch: refs/heads/users/jebyrnes/DS-FIFO-stalls
Home: https://github.com/llvm/llvm-project
Commit: 04c6e4ee68d9e18682be3896ca5675da2633d01e
https://github.com/llvm/llvm-project/commit/04c6e4ee68d9e18682be3896ca5675da2633d01e
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
A llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
A llvm/test/CodeGen/AMDGPU/amdgpu-workload-type-scheduler-debug.mir
A llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
Log Message:
-----------
[AMDGPU] Add ML-oriented coexec scheduler selection and queue handling
This patch adds the initial coexec scheduler scaffold for machine
learning workloads on gfx1250.
It introduces function and module-level controls for selecting the
AMDGPU preRA and postRA schedulers, including an `amdgpu-workload-type`
module flag that maps ML workloads to coexec preRA scheduling and a nop
postRA scheduler by default.
It also updates the coexec scheduler to use a simplified top-down
candidate selection path that considers both available and pending
queues through a single flow, setting up follow-on heuristic work.
Commit: 19977f9c8af70845f8c4e6d0f0018f1d00038df0
https://github.com/llvm/llvm-project/commit/19977f9c8af70845f8c4e6d0f0018f1d00038df0
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
R llvm/test/CodeGen/AMDGPU/amdgpu-workload-type-scheduler-debug.mir
Log Message:
-----------
Remove module "workload-type" metadata.
Commit: bc2d2769cd201fc15c2ea3670f4d039ef982dcc9
https://github.com/llvm/llvm-project/commit/bc2d2769cd201fc15c2ea3670f4d039ef982dcc9
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
Log Message:
-----------
Formating.
Commit: 28e38e4373205f88a472ad8531623e33c72f927a
https://github.com/llvm/llvm-project/commit/28e38e4373205f88a472ad8531623e33c72f927a
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
Log Message:
-----------
[AMDGPU] Add structural stall heuristic to scheduling strategies
Implements a structural stall heuristic that considers both resource
hazards and latency constraints when selecting instructions. In coexec,
this changes the pending queue from a binary “not ready to issue”
distinction into part of a unified candidate comparison. Pending
instructions still identify structural stalls in the current cycle, but
they are now evaluated directly against available instructions by stall
cost, making the heuristics both more intuitive and more expressive.
- Add getStructuralStallCycles() to GCNSchedStrategy that computes the
number of cycles an instruction must wait due to:
- Resource conflicts on unbuffered resources (from the SchedModel)
- Sequence-dependent hazards (from GCNHazardRecognizer)
- Add getHazardWaitStates() to GCNHazardRecognizer that returns the number
of wait states until all hazards for an instruction are resolved,
providing cycle-accurate hazard information for scheduling heuristics.
Commit: 8f07552373589bfb51d16180cd1e8ff9e3d3f9df
https://github.com/llvm/llvm-project/commit/8f07552373589bfb51d16180cd1e8ff9e3d3f9df
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
Log Message:
-----------
Update coexec-sched-effective-stall.mir
Commit: 1cfd5a4923761e1ac6a7992680207bef9b70082a
https://github.com/llvm/llvm-project/commit/1cfd5a4923761e1ac6a7992680207bef9b70082a
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
M llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
A llvm/test/CodeGen/AMDGPU/coexec-scheduler.ll
Log Message:
-----------
[AMDGPU] Add HWUI pressure heuristics to coexec strategy
Change-Id: I322cc670c8d923a6df23588d8a14cdaec1f49da9
Commit: e18117ef4d377de2620ddd531d841913d16408a8
https://github.com/llvm/llvm-project/commit/e18117ef4d377de2620ddd531d841913d16408a8
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
Log Message:
-----------
Change old code
Change-Id: I26cff6c0c5743684778f022b264c9930eeff24ce
Commit: a4ab49a05a4b81a4aa04bfd994cb94d2b96f8e37
https://github.com/llvm/llvm-project/commit/a4ab49a05a4b81a4aa04bfd994cb94d2b96f8e37
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
Log Message:
-----------
Fix mir test
Change-Id: I1b3dba10ea74c98454c433ecd52b165836929075
Commit: a8caa422e120cdac3b7ba51fe4ffdfebfeba8e58
https://github.com/llvm/llvm-project/commit/a8caa422e120cdac3b7ba51fe4ffdfebfeba8e58
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
Log Message:
-----------
Use AMDGPU namespace + const ref
Change-Id: Ie4ca27528c92dbd0f3cf6293d9bc25d13b7d31fc
Commit: 2ec0ff7217d1af16bd094504b4b0e5abb16cab6a
https://github.com/llvm/llvm-project/commit/2ec0ff7217d1af16bd094504b4b0e5abb16cab6a
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
M llvm/test/CodeGen/AMDGPU/coexec-scheduler.ll
Log Message:
-----------
[AMDGPU] Add stalls for DS FIFO buffer
Change-Id: I73e56da97a931349e0655e4e20b24aeb97920647
Compare: https://github.com/llvm/llvm-project/compare/04c6e4ee68d9%5E...2ec0ff7217d1
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