[PATCH] D65288: AMDGPU: Disable the load and store cluster mutations for the schedulers
Tom Stellard via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 25 09:13:19 PDT 2019
tstellar created this revision.
tstellar added reviewers: rampitec, arsenm, nhaehnle.
Herald added subscribers: hiraditya, t-tye, tpr, dstuttard, yaxunl, wdng, jvesely, kzhuravl.
Herald added a project: LLVM.
These tend to increase register usage, and I'm not sure they provide
that much benefit now that the SILoadStoreOptimizer is run before
scheduling.
shader-db results:
SGPRS: 2395408 -> 2245808 (-6.25 %)
VGPRS: 1385652 -> 1377068 (-0.62 %)
Spilled SGPRs: 13732 -> 12147 (-11.54 %)
Spilled VGPRs: 67 -> 104 (55.22 %)
Private memory VGPRs: 5872 -> 5872 (0.00 %)
Scratch size: 6848 -> 6864 (0.23 %) dwords per thread
Code Size: 57847052 -> 58209484 (0.63 %) bytes
LDS: 132 -> 132 (0.00 %) blocks
Max Waves: 470488 -> 472363 (0.40 %)
Wait states: 0 -> 0 (0.00 %)
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D65288
Files:
llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Index: llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
===================================================================
--- llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -258,8 +258,6 @@
createGCNMaxOccupancyMachineScheduler(MachineSchedContext *C) {
ScheduleDAGMILive *DAG =
new GCNScheduleDAGMILive(C, make_unique<GCNMaxOccupancySchedStrategy>(C));
- DAG->addMutation(createLoadClusterDAGMutation(DAG->TII, DAG->TRI));
- DAG->addMutation(createStoreClusterDAGMutation(DAG->TII, DAG->TRI));
DAG->addMutation(createAMDGPUMacroFusionDAGMutation());
return DAG;
}
@@ -268,8 +266,6 @@
createIterativeGCNMaxOccupancyMachineScheduler(MachineSchedContext *C) {
auto DAG = new GCNIterativeScheduler(C,
GCNIterativeScheduler::SCHEDULE_LEGACYMAXOCCUPANCY);
- DAG->addMutation(createLoadClusterDAGMutation(DAG->TII, DAG->TRI));
- DAG->addMutation(createStoreClusterDAGMutation(DAG->TII, DAG->TRI));
return DAG;
}
@@ -282,8 +278,6 @@
createIterativeILPMachineScheduler(MachineSchedContext *C) {
auto DAG = new GCNIterativeScheduler(C,
GCNIterativeScheduler::SCHEDULE_ILP);
- DAG->addMutation(createLoadClusterDAGMutation(DAG->TII, DAG->TRI));
- DAG->addMutation(createStoreClusterDAGMutation(DAG->TII, DAG->TRI));
DAG->addMutation(createAMDGPUMacroFusionDAGMutation());
return DAG;
}
@@ -554,8 +548,6 @@
ScheduleDAGInstrs *
createMachineScheduler(MachineSchedContext *C) const override {
ScheduleDAGMILive *DAG = createGenericSchedLive(C);
- DAG->addMutation(createLoadClusterDAGMutation(DAG->TII, DAG->TRI));
- DAG->addMutation(createStoreClusterDAGMutation(DAG->TII, DAG->TRI));
return DAG;
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65288.211775.patch
Type: text/x-patch
Size: 1721 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190725/5d08a06a/attachment.bin>
More information about the llvm-commits
mailing list