Skip to content

Commit 5b2fee8

Browse files
authored
[AMDGPU] NFC: Add flag to disable clustered low occupancy phase (#73025)
This will help users analyze whether high register usage is coming from inability of scheduler to reduce RP, or from sacrificing good RP to improve ILP.
1 parent 03ac08d commit 5b2fee8

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ static cl::opt<bool> DisableUnclusterHighRP(
3737
cl::desc("Disable unclustered high register pressure "
3838
"reduction scheduling stage."),
3939
cl::init(false));
40+
41+
static cl::opt<bool> DisableClusteredLowOccupancy(
42+
"amdgpu-disable-clustered-low-occupancy-reschedule", cl::Hidden,
43+
cl::desc("Disable clustered low occupancy "
44+
"rescheduling for ILP scheduling stage."),
45+
cl::init(false));
46+
4047
static cl::opt<unsigned> ScheduleMetricBias(
4148
"amdgpu-schedule-metric-bias", cl::Hidden,
4249
cl::desc(
@@ -726,6 +733,9 @@ bool UnclusteredHighRPStage::initGCNSchedStage() {
726733
}
727734

728735
bool ClusteredLowOccStage::initGCNSchedStage() {
736+
if (DisableClusteredLowOccupancy)
737+
return false;
738+
729739
if (!GCNSchedStage::initGCNSchedStage())
730740
return false;
731741

0 commit comments

Comments
 (0)