On Jan 24, 2009, at 7:35 PM, Jack Howarth wrote:
> Since the fact that gfortran performance has improved
> over the major releases, I decided to benchmark the current
> releases on a MacPro with the Polyhedron 2005 benchmarks
> using -ffast-math -funroll-loops -msse3 -O3. The results
> are...
>
> gcc release
> gcc 4.2.4 gcc 4.3.3 gcc 4.4-pre gcc 4.3.3/
> gcc 4.4-pre/
> gcc 4.2.4
> gcc 4.2.4
> ac 15.32 13.04 12.65 0.851
> 0.826
> aermod 22.96 26.65 25.52 1.161
> 1.111
> air 8.15 7.58 7.10 0.930
> 0.871
> capacita 52.16 52.45 49.56 1.006
> 0.950
> channel 5.17 3.39 1.81 0.656
> 0.350
> doduc 34.43 34.89 35.28 1.013
> 1.025
> fatigue 12.57 10.92 10.13 0.869
> 0.806
> gas_dyn 13.59 7.68 7.63 0.565
> 0.561
> induct 28.61 48.46 14.88 1.694
> 0.520
> linpk 15.46 15.48 15.50 1.001
> 1.003
> mdbx 12.41 12.94 12.36 1.043
> 0.996
> nf 27.08 27.25 25.50 1.006
> 0.942
> protein 41.61 41.18 39.12 0.990
> 0.940
> rnflow 35.37 32.58 30.68 0.921
> 0.867
> test_fpu 11.94 10.79 10.50 0.904
> 0.879
> tfft 2.13 2.11 2.08 0.991
> 0.977
>
> Certainly it would be nice eventually resync llvm-gcc against
> something
> newer.
There are some heavy licensing issues involved in this (which I won't
go into here) that make this difficult. I don't think that the problem
is the version of GCC we're using as a front-end, but rather how our
optimizations perform compared with GCC's optimizations. We don't
really use any of GCC's optimizations for the code we generate.
-bw