This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: induct regression in gcc 4.3.1
Attempting to pinpoint which optimization flags were
triggering the performance regression in the polyhedron
induct benchmark under gcc 4.3.1, I found the following
execution times...
-O3 71.71
-ffast-math -O3 89.76
-funsafe-math-optimizations -O3 91.55
-freciprocal-math -fassociative-math -fno-signed-zeros -fno-trapping-math -O3 91.26
-freciprocal-math -O3 71.13
-fassociative-math -O3 71.68
-fno-signed-zeros -O3 71.55
-fno-trapping-math -O3 71.89
-freciprocal-math -fassociative-math -fno-signed-zeros -O3 72.58
-fassociative-math -fno-signed-zeros -fno-trapping-math -O3 90.98
-freciprocal-math -fassociative-math -fno-trapping-math -O3 71.49
-fassociative-math -fno-signed-zeros -O3 71.68
-fno-signed-zeros -fno-trapping-math -O3 70.67
-fassociative-math -fno-trapping-math -O3 71.78
-freciprocal-math -fno-signed-zeros -fno-trapping-math -O3 71.92
So it appears that the minimum flags required to cause this regression in
the induct execution benchmark are "-fassociative-math -fno-signed-zeros -fno-trapping-math -O3".
The negative impact of the "-fassociative-math -fno-signed-zeros -fno-trapping-math" flags
doesn't seem to occur at -O2...
-O2 94.61
-fassociative-math -fno-signed-zeros -fno-trapping-math -O2 92.98
Jack
ps I'll try to reproduce this regression (currently tested on i686-apple-darwin9)
at -m64 on the same platform and on i386 Fedora 9.