Tel: +44(0)1865 300 579
Fax: +44(0)1865 300 232

Programs for Programmers

64 bit Fortran Execution Time Benchmarks - Linux64 on AMD X2 5600

 

  Absoft
10.0.7
g95
0.91
gfortran
4.3.1
intel
10.1.008
Lahey
8.00a
Nag
5.1
pathscale
3.1
pgi
7.1-6
Sun
8.3
AC 9.28 17.80 12.16 11.80 15.51 21.51 9.03 11.87 17.85
AERMOD 25.53 39.93 32.07 27.44 26.12 37.86 32.10 24.62 27.09
AIR 13.65 18.76 12.28 10.68 10.79 12.70 13.35 12.65 10.74
CAPACITA 56.84 91.28 80.06 74.20 95.57 83.84 54.99 54.89 82.26
CHANNEL 18.05 22.16 10.75 13.24 13.51 13.40 12.52 11.36 10.12
DODUC 38.55 44.40 38.40 31.86 39.60 43.88 32.33 32.34 39.66
FATIGUE 5.53 37.37 8.76 7.92 11.46 17.54 5.24 7.27 8.95
GAS_DYN 5.03 18.96 10.51 6.05 10.66 12.65 7.18 7.37 10.69
INDUCT 28.85 37.60 44.19 37.38 38.26 34.45 26.86 33.29 37.00
LINPK 21.06 23.09 21.55 21.36 21.98 21.52 22.02 22.50 21.89
MDBX 17.03 23.33 16.46 17.21 17.39 18.65 17.31 18.36 16.07
NF 21.17 41.53 27.74 22.09 32.05 24.21 21.77 24.34 24.89
PROTEIN 42.16 60.36 46.76 41.95 75.49 48.29 44.48 50.93 57.23
RNFLOW 28.03 45.11 31.34 35.34 31.52 36.93 24.79 37.20 32.54
TEST_FPU 16.61 29.12 18.82 16.88 18.73 18.45 17.26 17.61 14.96
TFFT 7.16 7.24 7.15 7.21 7.23 7.20 6.94 7.16 6.94
 
Geometric Mean 17.88 29.91 20.82 18.98 22.44 23.55 17.73 19.12 20.57
 
Compiler Switches
Absoft af95 -m64 -Ofast -speed_math=9 -WOPT:if_conv=off -LNO:fu=9:full_unroll_size=7000 -march=host -TARG:sse3=on -xINTEGER
g95 g95  -march=opteron -ffast-math -funroll-loops -O3
gfortran gfortran -march=native -ffast-math -funroll-loops  -O3
Intel ifort -O3 -xO -ipo -no-prec-div
Lahey lf95 --fast --static -x -
NAG nagf95 -O4 -mismatch_all -ieee=full -Bstatic
Pathscale

pathf95 -Ofast -CG:movnti=16 -WOPT:if_conv=0 -LNO:fu=9:full_unroll_size=7000:prefetch=1:trip_count=50

PGI pgf90 -Bstatic -V -fastsse -Munroll=n:4 -Mipa=fast,inline -tp k8-64
Sun sunf95 -native -O4 -xipo -libmil
 
Notes

All figures are Execution Times in Seconds - measured on a Dell Dimension E521 with an AMD X2  processor 5600 (2.8 GHz), with 4 x 1024MB 533MHz DDR2 Memory, running openSuSE 10.2. Each figure is the average over at least 10 runs (many more for some). Measurement error is typically <1%.  Green cells highlight figures within 10% of the fastest.  Red cells indicate figures which are more than 150% of the fastest.

So far as possible, we have used the compiler switches which give the best overall results.  We have not attempted to tune individual benchmarks, and, in particular cases, different switch settings may give better results. 

Thanks are due to Jos Bergervoet for permission to use his CAPACITA benchmark, to Quetzal Associates for permission to use their CHANNEL, FATIGUE, GAS_DYN, INDUCT, PROTEIN and RNFLOW benchmarks, to David Frank for his TEST_FPU benchmark, and to Ted Addison of McVehil-Monnett Associates for permission to use AERMOD, an air quality model used by the US Environmental Protection Agency.

All the benchmarks have been modified slightly to fit into our benchmarking harness. 

The NF benchmark uses  "nested factorization", a little known but very effective iterative linear solver for huge finite difference matrices.  A paper describing nested factorization, and comparing it to other methods is available here.

These benchmarks were also used to compare Win32 and Linux compilers on a Pentium based machine.

Download Polyhedron Benchmarks