This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: Compilation time has more than doubled on some Polyhedron tests
- From: Tobias dot Schlueter at Physik dot Uni-Muenchen dot DE
- To: Dominique Dhumieres <dominiq at lps dot ens dot fr>
- Cc: fortran at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: Sun, 15 Jan 2006 19:36:14 +0100
- Subject: Re: Compilation time has more than doubled on some Polyhedron tests
- References: <43CA92B8.mailA0Y1CCN4J@tournesol.lps.ens.fr>
[ Added gcc@gcc.gnu.org to the CC list and included Dominique's mail in full, as
the problem might well be in the common code. ]
Quoting Dominique Dhumieres <dominiq@lps.ens.fr>:
> 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
Are you building with --enable-checking (the default)? Can you try compiling
some of the most-affected files with -ftime-report, so that we can see where
the slowdown occured?
- Tobi