[PATCH] D33105: [AMDGPU] Turn register pressure estimation into forward tracker

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 15 09:41:43 PDT 2017


rampitec added a comment.

In https://reviews.llvm.org/D33105#755158, @vpykhtin wrote:

> In https://reviews.llvm.org/D33105#755142, @rampitec wrote:
>
> > In https://reviews.llvm.org/D33105#754976, @vpykhtin wrote:
> >
> > > If I don't mistake downward tracker cannot work on arbitrary instruction order, so let's change it's interface so that it tracks current instruction and move it, likewise like llvm standard tracker, that is reset(MI), advance()
> >
> >
> > In general it cannot work on an arbitrary order, but it can be used as a probe to schedule next arbitrary instruction and then reset to the previous state.
> >  Then in https://reviews.llvm.org/D33117 I'm using advanceBefore to cross basic block boundary and I do not really want to slow down advance method by checking for the iterator end condition which is needed relatively seldom.
>
>
> Why are you sure it would work on arbitrary out-of-original-LIS-constructed-order instruction?


If I advance just a single out of order instruction it will give you not the correct RP at it, but a correct RP diff as a result of such single instruction scheduling. Honestly you cannot expect more from a probe without giving a whole order of intermediate instructions.


Repository:
  rL LLVM

https://reviews.llvm.org/D33105





More information about the llvm-commits mailing list