This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU: Don't consider global pressure when bundling soft clauses
ClosedPublic

Authored by arsenm on Jan 31 2021, 8:16 AM.

Details

Reviewers
rampitec
Summary

This should only consider whether the pressure impact of the relevant
at the given point in the program will decrease the occupancy. High
VGPR pressure was incorrectly blocking the formation of scalar
bundles, and vice versa. This was also blocking bundling from high
pressure situations at other points in the program.

Diff Detail

Event Timeline

arsenm created this revision.Jan 31 2021, 8:16 AM
arsenm requested review of this revision.Jan 31 2021, 8:16 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 31 2021, 8:16 AM
Herald added a subscriber: wdng. · View Herald Transcript
rampitec added inline comments.Feb 1 2021, 10:46 AM
llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
249

I do not like copying the array. Maybe just expose proxy helpers getOccupancy(), getGurVGPRNum(), and getCurSGPRNum() from GCNRPTracker?

arsenm updated this revision to Diff 320609.Feb 1 2021, 2:44 PM

Address comments

rampitec accepted this revision.Feb 1 2021, 3:23 PM
This revision is now accepted and ready to land.Feb 1 2021, 3:23 PM