------- Comment #3 from howarth at nitro dot med dot uc dot edu 2010-03-21 18:40 ------- Using built-in specs. Target: x86_64-apple-darwin10.3.0 Configured with: ../gcc-4.4.4/configure --prefix=/sw --prefix=/sw/lib/gcc4.4 --mandir=/sw/share/man --infodir=/sw/share/info --enable-languages=c,c++,fortran,objc,java --with-gmp=/sw --with-libiconv-prefix=/sw --with-ppl=/sw --with-cloog=/sw --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --disable-libjava-multilib --enable-checking=release Thread model: posix gcc version 4.4.4 20100320 (prerelease) (GCC)
shows... ================================================================================ Date & Time : 21 Mar 2010 13:31:33 Test Name : gfortran_lin_O3 Compile Command : gfortran -ffast-math -funroll-loops -msse3 -O3 %n.f90 -o %n Benchmarks : ac aermod air capacita channel doduc fatigue gas_dyn induct linpk mdbx nf protein rnflow test_fpu tfft Maximum Times : 2000.0 Target Error % : 0.100 Minimum Repeats : 10 Maximum Repeats : 100 Benchmark Compile Executable Ave Run Number Estim Name (secs) (bytes) (secs) Repeats Err % --------- ------- ---------- ------- ------- ------ ac 0.79 10000 11.24 10 0.0063 aermod 36.50 10000 21.49 10 0.0064 air 2.10 10000 5.70 10 0.0564 capacita 1.34 10000 35.27 10 0.0140 channel 0.74 10000 1.75 11 0.0928 doduc 4.32 10000 27.50 10 0.0118 fatigue 1.64 10000 8.46 10 0.0541 gas_dyn 2.39 10000 5.08 15 0.0971 induct 3.51 10000 12.81 10 0.0122 linpk 0.72 10000 15.43 10 0.0618 mdbx 1.40 10000 11.28 10 0.0471 nf 3.01 10000 29.38 17 0.0977 protein 3.38 10000 35.30 10 0.0102 rnflow 4.44 10000 23.42 10 0.0160 test_fpu 4.13 10000 8.74 10 0.0189 tfft 0.45 10000 1.90 12 0.0253 Geometric Mean Execution Time = 11.47 seconds ================================================================================ and for gcc trunk... Using built-in specs. COLLECT_GCC=gcc-4 COLLECT_LTO_WRAPPER=/sw/lib/gcc4.5/libexec/gcc/x86_64-apple-darwin10.3.0/4.5.0/lto-wrapper Target: x86_64-apple-darwin10.3.0 Configured with: ../gcc-4.5-20100320/configure --prefix=/sw --prefix=/sw/lib/gcc4.5 --mandir=/sw/share/man --infodir=/sw/share/info --enable-languages=c,c++,fortran,objc,obj-c++,java --with-gmp=/sw --with-libiconv-prefix=/sw --with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --disable-libjava-multilib --enable-checking=release Thread model: posix gcc version 4.5.0 20100321 (experimental) (GCC) ================================================================================ Date & Time : 21 Mar 2010 12:28:57 Test Name : gfortran_lin_O3 Compile Command : gfortran -ffast-math -funroll-loops -msse3 -O3 %n.f90 -o %n Benchmarks : ac aermod air capacita channel doduc fatigue gas_dyn induct linpk mdbx nf protein rnflow test_fpu tfft Maximum Times : 2000.0 Target Error % : 0.100 Minimum Repeats : 10 Maximum Repeats : 100 Benchmark Compile Executable Ave Run Number Estim Name (secs) (bytes) (secs) Repeats Err % --------- ------- ---------- ------- ------- ------ ac 0.90 10000 10.60 10 0.0706 aermod 39.17 10000 20.96 10 0.0060 air 2.26 10000 5.68 12 0.0254 capacita 1.71 10000 33.17 10 0.0097 channel 0.56 10000 1.83 10 0.0326 doduc 4.59 10000 27.75 10 0.0040 fatigue 1.54 10000 8.07 10 0.0647 gas_dyn 2.85 10000 4.39 16 0.0850 induct 3.64 10000 12.65 10 0.0056 linpk 0.71 10000 15.39 10 0.0233 mdbx 1.51 10000 11.33 10 0.0061 nf 1.89 10000 27.56 48 0.0935 protein 3.47 10000 37.03 10 0.0112 rnflow 5.16 10000 23.67 10 0.0166 test_fpu 4.18 10000 8.67 10 0.0148 tfft 0.49 10000 1.88 10 0.0389 Geometric Mean Execution Time = 11.24 seconds ================================================================================ which reduces the compile time regressions down to... benchmark gcc45 compile time/gcc44 compile time ac 1.14 aermod 1.07 air 1.08 capacita 1.28 channel 0.76 doduc 1.06 fatigue 0.94 gas_dyn 1.19 induct 1.04 linpk 0.99 mdbx 1.08 nf 1.35 protein 1.03 rnflow 1.16 test_fpu 1.01 tfft 1.09 So the bulk of the compile time regression is due to not using release checking. This increased compile time penalty for not using release checking should be mentioned in the release notes (since it is a significant change from prior releases). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43463