[llvm] [AMDGPU] Add getRegPressureLimit(TargetOccupancy) (PR #84311)

Jeffrey Byrnes via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 13 11:18:17 PDT 2024


jrbyrnes wrote:

Hi -- 

As you suggested, the interesting scenarios will occur when our scheduler can't achieve the min-waves-per-eu. In these scenarios, I'm not sure I agree with "using fewer VGPRs might be a good thing anyway"; I think it is better to give the scheduler more freedom to achieve other goals (e.g. ILP) in a best effort to produce performing schedules.

Based on this, I have two concerns: 1. If our TargetOccupancy is based on LDS, we shouldn't be targeting a higher occupancy's (i.e. min-waves-per-eu) RP in hope of increasing occupancy. 2. In the ClusteredLowOccStage, we shouldn't be scheduling to achieve RP of a higher occupancy (i.e. min-waves-per-eu) than the DAG.MinOccupancy.

On the other hand, I can see why we might want to do something like this in the UnclusteredHighRPStage (if occupancy is not LDS limited).

https://github.com/llvm/llvm-project/pull/84311


More information about the llvm-commits mailing list