[Patch, Fortran, OOP] PR 50960: vtables not marked as constant
Tobias Burnus
burnus@net-b.de
Mon Nov 14 16:43:00 GMT 2011
On 11/14/2011 04:47 PM, Salvatore Filippone wrote:
> Well, -flto makes things worse, a LOT worse, run time is multiplied by
> 1.85 for a certain phase (50.2 s instead of 27.2) and 2.23 for another
> (9.53 s instead of 4.27)! Maybe this is worth investigating?
I think it is definitely worth doing so. Best would be a small test
case; however, any prescription how one can reproduce it, would help.
Is the library and the test case somewhere available? I assume, you use
a newer-than-released PSBLAS v3beta version.
The huge performance difference comes completely unexpectedly. LTO
should typically not make much of a difference and it typically it
should not pessimize the run time much (if at all), though like any
heuristic optimization, it sometimes might.
Note: As LTO only applies (at link time) to files compiled with -flto,
you could try to narrow it down by only compiling certain files with -flto.
Question: Which flags do you use for *linking*? I currently assume that
you use "-O3 -march=native -flto" for both compiling and linking.
However, if one skips the -O3 for the "-flto" linking, I could imagine
performance issues.
(I also remember that once the "-march=native" was effectively lost for
-flto, but that has been fixed and should not cause that much of a
difference.)
Just for completeness: I assume that you run on a x86-64 Linux system
(64bit code), aren't you?
Tobias
More information about the Fortran
mailing list