[PATCH] D40578: AMDGPU: Make hazard recognizer aware of maximum clause sizes

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 28 13:40:18 PST 2017


arsenm created this revision.
Herald added subscribers: tpr, dstuttard, yaxunl, nhaehnle, wdng, kzhuravl.

Supposedly clauses can be formed up until vmcnt/lgkmcnt are
saturated.

     

The limit for vmcnt on gfx9 is pretty big, so this requires
looking ahead 64 instructions. I don't know how much of an
impact this has on compile time. Reducing it should be
conservatively correct at the cost of extra nops inserted
into unreasonably large clauses.

      

Another issue is this doesn't account for how some
instructions increase the counter by more than 1,
but this should be conservatively correct.


https://reviews.llvm.org/D40578

Files:
  lib/Target/AMDGPU/AMDGPUSubtarget.h
  lib/Target/AMDGPU/GCNHazardRecognizer.cpp
  lib/Target/AMDGPU/GCNHazardRecognizer.h
  test/CodeGen/AMDGPU/break-smem-soft-clauses.mir
  test/CodeGen/AMDGPU/break-vmem-soft-clauses.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D40578.124634.patch
Type: text/x-patch
Size: 44748 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171128/953d8383/attachment.bin>


More information about the llvm-commits mailing list