Scheduling an early complete loop unrolling pass?

Dorit Nuzman DORIT@il.ibm.com
Mon Feb 5 19:12:00 GMT 2007


Richard Guenther <rguenther@suse.de> wrote on 05/02/2007 18:16:05:

> On Mon, 5 Feb 2007, Jan Hubicka wrote:
...
> > Did you run some benchmarks?
>
> Not yet - I'm looking at the C++ SPEC 2006 benchmarks at the moment
> and using vectorization there seems to do a lot of collateral damage
> (maybe not measurable though).
>

Interesting. In SPEC 2000 there is also a hot small loop in the only C++
benchmark (eon), which get vectorized, and as a result degrades
performance. We really should not vectorize such loops, and the solution
is:
1. FORNOW: use --param min-vect-loop-bound=2 (or some value greater than
0).
2. SOON: rely on the vectorizer to do the cost analysis and decide not to
vectorize such loops, using a cost model - this is in the works.

dorit

> Richard.
>
> --
> Richard Guenther <rguenther@suse.de>
> Novell / SUSE Labs



More information about the Gcc mailing list