LTO and the inlining of functions only called once.

Toon Moene toon@moene.org
Sun Oct 11 13:30:00 GMT 2009


Jan Hubicka wrote:

> We already have -Winline that dumps same info for all functions marked
> inline.  I am not sure if warning about all functions would help too
> much, but I might be C centric where if I wanted to get something
> inlined, I would use inline keyword :)

I must say I learned *a lot* about vectorization by having the 
vectorizer report on *every loop* whether it could vectorize it or not.

A couple of weeks ago we handed off our code to an external reviewer. 
He  - using ifort - (as well as we, using gfortran),  reported ~ 100,000 
loops of which ~ 51 % were vectorized (he also categorized the 
non-vectorized loops according to reason-not-vectorized (5 classes)).

If I were afraid of big numbers, I wouldn't work in meteorology :-)

[ PS, I finally constructed a dumbed down setup with the routines
   GEMINI, HLPROG, PHCALL, PHTASK and SL2TIM.  Amazingly, now
   -flto -fwhole-program starts to *do* something: lto1 spend a
   whole 25 seconds on processing this. ]

Line counts:
   3298 gemini.f
    830 hlprog.f
      2 main.f
    584 phcall.f
    882 phtask.f
   2182 sl2tim.f
   7778 total

Cheers,

-- 
Toon Moene - e-mail: toon@moene.org - phone: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
At home: http://moene.org/~toon/
Progress of GNU Fortran: http://gcc.gnu.org/gcc-4.5/changes.html



More information about the Gcc mailing list