[PATCH] D35741: Add MemorySSA alternative to AliasSetTracker in LICM.

Sanjoy Das via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 27 12:35:44 PDT 2017


On Wed, Sep 27, 2017 at 12:16 PM, Alina Sbirlea <alina.sbirlea at gmail.com> wrote:
>> Do you have preliminary numbers on how much faster MSSA- AST is than the
>> regular
>> AST?  For instance, what's the performance difference between repeatedly
>> constructing the AST vs. constructing the MSSA-AST over some
>> representative IR?
>>
>> In other words, can we get an upper bound on the speedup without doing all
>> the
>> work needed to teach all the loop passes to preserve MSSA?  If this upper
>> bound
>> is near-0, then we can cut our losses and avoid doing a bunch of
>> unnecessary
>> work.
>
>
> On unit tests / regression tests, the overhead is too small for both, not
> representative.
> On the pathological case, both need to be capped. I'll get some preliminary
> numbers on the testcase in PR28670, and the larger version I extracted then,
> but this will only point at what the cap should be, so again, probably not
> representative?

I meant to say: if without any caps, MSSA-AST and AST both take 20
mins to complete, then there is no advantage to implementing MSSA-AST.
OTOH if MSSA-AST takes 10mins and AST takes 20mins, this means that
with the same cap, we **maybe** get to optimize loops that are twice
as large (assuming the same density of mem-ops w.r.t. regular
instructions).

>
> I would hope that the MSSA-ASTs will not be the final solution, since the
> purpose here is to address PR31883.
> Davide, do you have additional testcases that I can look into? (the ones
> from the profile in PR31883?)
>


More information about the llvm-commits mailing list