This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Compilation time has more than doubled on some Polyhedron tests
- From: dominiq at lps dot ens dot fr (Dominique Dhumieres)
- To: fortran at gcc dot gnu dot org
- Date: Sun, 15 Jan 2006 19:21:44 +0100
- Subject: Compilation time has more than doubled on some Polyhedron tests
I have the following timing for the compilation of the polyhedron tests
on a 1.8Ghz G5 with:
gfortran -w -O3 -ftree-loop-linear -ffast-math -funroll-loops
for the following snapshots patched with the Paul Thomas' optimization of
dot_product.
snapshot 12/24 12/31 01/07 01/14
ac 5.8s 6.0s 24.7s 23.0s +
aermod 223.9s 227.3s 485.8s 467.6s +
air 21.0s 21.6s 8.2s 8.0s -
capacita 4.6s 4.7s 5.8s 5.6s
channel 2.5s 2.5s 17.6s 17.7s +
doduc 19.7s 20.0s 38.6s 37.0s +
fatigue 15.0s 15.4s 7.2s 6.8s -
gas_dyn 8.6s 8.8s 19.6s 18.5s +
induct 28.1s 28.7s 66.1s 61.6s +
kepler 0.6s 0.6s 1.1s 1.0s +
linpk 1.4s 1.4s 1.4s 1.4s
mdbx 5.3s 5.4s 6.9s 6.5s
nf 3.6s 3.6s 4.4s 4.3s
protein 15.5s 15.9s 15.9s 14.5s
rnflow 11.4s 11.6s 12.6s 12.7s
test_fpu 8.4s 8.5s 8.8s 8.5s
tfft 1.3s 1.3s 1.8s 1.7s
I only noticed it today, but there has been a noticable change in the
compilation time between the 20051231 and 20060107 snapshots:
air.f90 and fatigue.f90 compile twice faster, but aermode.f90,
doduc.f90, gas_dyn.f90, induct.f90, and kepler.f90 compile twice slower,
while ac.f90 takes four more time and channel.f90 takes seven more time.
Am I the only one to see that? If not, does any one has any idea of what
caused this slow down in compilation?
Using the François-Xavier's builds I have narrowed the problem between the
05/01 and the 06/01:
[scala] gfortran/2006> time irun/bin/gfortran -v -O3 -ffast-math -funroll-loops induct.f90
...
GNU F95 version 4.2.0 20060105 (experimental) (x86_64-unknown-linux-gnu)
...
19.375u 0.250s 0:20.39 96.2% 0+0k 0+0io 0pf+0w
[scala] gfortran/2006> time irun/bin/gfortran -v -O3 -ffast-math -funroll-loops induct.f90
...
GNU F95 version 4.2.0 20060106 (experimental) (x86_64-unknown-linux-gnu)
...
33.865u 0.362s 0:35.09 97.5% 0+0k 0+0io 0pf+0w
TIA
Dominique
On the induct.f90 test I get with the latest snapshot:
options compile exec
-O3 -ftree-loop-linear -ffast-math -funroll-loops 62.7 66.7
-O3 -ffast-math -funroll-loops 61.0 66.6
-O3 -ffast-math 59.5 72.0
-O3 -funroll-loops 60.1 81.1
-O3 59.5 81.4
-O2 -ffast-math -funroll-loops 60.1 67.0
-O2 -ffast-math 54.3 154.5
-O2 -funroll-loops 58.7 81.0
-O2 55.2 112.3
-O1 -ffast-math -funroll-loops 14.6 80.5
-O1 -ffast-math 12.6 160.3
-O1 -funroll-loops 14.4 105.7
-O1 12.7 164.4
-O0 -ffast-math -funroll-loops 3.3 638.0
-O0 3.4 634.4