[LLVMdev] RFC: Should we have (something like) -extra-vectorizer-passes in -O2?

Andrew Trick atrick at apple.com
Tue Oct 14 10:49:56 PDT 2014


> On Oct 14, 2014, at 10:41 AM, Chandler Carruth <chandlerc at google.com> wrote:
> 
> 
> On Tue, Oct 14, 2014 at 10:28 AM, Hal Finkel <hfinkel at anl.gov <mailto:hfinkel at anl.gov>> wrote:
> > I think it’s generally useful to have an “extreme” level of
> > optimization without much regard for compile time, and in that
> > scenario this pipeline makes sense. But this is hardly something
> > that should happen at -O2/-Os, unless real data shows otherwise.
> 
> Doing all this only at >= -O3 does not seem unreasonable to me.
> 
> FWIW, I think we're being overly conservative if we're relegating these to -O3 when the total cost is 2%. That doesn't seem like the right tradeoff.
> 
> I actually agree that the set I proposed is on the aggressive end -- that was the point -- but we have more than 2% fluctuations in the optimizers' runtime from month to month. If we want to rip stuff out it should be because of a principled reason that it isn't going to help the code in that phase.

The “total cost” is not the same as the overhead when building the opt binary. But the flag is there now, so it’s just a matter of trying it out.

How does the 2% overhead from cleanup compare to the cost of the vectorizer itself?

-Andy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141014/22fef6ea/attachment.html>


More information about the llvm-dev mailing list