Sebastian,
Here are, in addition, the numbers for compiling and
running HIRLAM with -ftree-loop-distribution (after applying your patch,
obviously).
There something weird going on with the count of the "loops not
vectorized" - every successfully vectorized loop gets an additional
message:
note: not vectorized: vectorization may not beprofitable.
which rather defeats the purpose of the "not vectorized" messages.
In short, almost 1900 more loops are vectorized, but that's of course
certainly due to the fact that loop distribution *makes* more loops.
In run time it has little (but positive) effect.
Kind regards,
--
Toon Moene - e-mail: [EMAIL PROTECTED] - phone: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
At home: http://moene.indiv.nluug.nl/~toon/
GNU Fortran's path to Fortran 2003: http://gcc.gnu.org/wiki/Fortran2003
Baseline, no source changes:
Mon Dec 10 17:45:19 UTC 2007 (revision 130746)
Compilation flags:
CCFLAGS := -g -O3 $(MACHINECPP) -ffast-math -fno-associative-math -march=native
-mtune=native -ftree-vectorizer-verbose=2
FCFLAGS := -g -O3 -fbacktrace -ffpe-trap=invalid,zero,overflow -ffast-math
-fno-associative-math -march=native -mtune=native -ftree-vectorizer-verbose=2
Loops vectorized:
5675
Loops not vectorized:
13705
Timings:
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 12.7488 SECONDS
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 2445.9609 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 259.3362 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 12.4408 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 305.9351 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 262.1124 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 12.7448 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 2323.3733 SECONDS
20061201_12r/HL_Cycle_2006120112r.html: FORECAST TOOK 412.7058 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 264.5685 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 12.6648 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 306.7352 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 261.5164 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 12.7688 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 2325.3774 SECONDS
20061202_00r/HL_Cycle_2006120200r.html: FORECAST TOOK 413.8739 SECONDS
Baseline, no source changes, with -ftree-loop-linear:
Mon Dec 10 17:45:19 UTC 2007 (revision 130746)
Compilation flags:
CCFLAGS := -g -O3 $(MACHINECPP) -ftree-loop-linear -ffast-math
-fno-associative-math -march=native -mtune=native -ftree-vectorizer-verbose=2
FCFLAGS := -g -O3 -ftree-loop-linear -fbacktrace
-ffpe-trap=invalid,zero,overflow -ffast-math -fno-associative-math
-march=native -mtune=native -ftree-vectorizer-verbose=2
This compilation got one ICE:
rttov_aitosu.f90: In function 'rttov_aitosu':
rttov_aitosu.f90:4: error: definition in block 262 does not dominate use in
block 134
for SSA_NAME: pretmp.240_59 in statement:
prephitmp.220_58 = PHI <pretmp.240_59(134), D.1480_1373(138)>
PHI argument
pretmp.240_59
for PHI node
prephitmp.220_58 = PHI <pretmp.240_59(134), D.1480_1373(138)>
rttov_aitosu.f90:4: internal compiler error: verify_ssa failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
Worked around by compiling this file without -ftree-loop-linear
Loops vectorized:
5671
Loops not vectorized:
13655
Timings:
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 12.5648 SECONDS
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 2444.1208 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 259.3402 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 12.4728 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 307.8672 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 260.0323 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 12.8608 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 2310.2485 SECONDS
20061201_12r/HL_Cycle_2006120112r.html: FORECAST TOOK 411.3977 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 261.1283 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 12.7248 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 308.1313 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 262.7564 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 12.6528 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 2336.5620 SECONDS
20061202_00r/HL_Cycle_2006120200r.html: FORECAST TOOK 410.6577 SECONDS
Baseline, with -ftree-loop-distribution changes:
Mon Dec 10 17:45:19 UTC 2007 (revision 130746M)
Compilation flags:
CCFLAGS := -g -O3 $(MACHINECPP) -ftree-loop-distribution -ffast-math
-fno-associative-math -march=native -mtune=native -ftree-vectorizer-verbose=2
FCFLAGS := -g -O3 -ftree-loop-distribution -fbacktrace
-ffpe-trap=invalid,zero,overflow -ffast-math -fno-associative-math
-march=native -mtune=native -ftree-vectorizer-verbose=2
Loops vectorized:
7540
Loops not vectorized:
15982
Timings:
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 12.8048 SECONDS
20061201_00/HL_Cycle_2006120100.html: FORECAST TOOK 2433.8242 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 258.8722 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 12.3848 SECONDS
20061201_06/HL_Cycle_2006120106.html: FORECAST TOOK 306.1311 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 265.6286 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 13.1528 SECONDS
20061201_12/HL_Cycle_2006120112.html: FORECAST TOOK 2327.9136 SECONDS
20061201_12r/HL_Cycle_2006120112r.html: FORECAST TOOK 412.1057 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 261.1963 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 12.7888 SECONDS
20061201_18/HL_Cycle_2006120118.html: FORECAST TOOK 308.2473 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 262.5524 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 12.7728 SECONDS
20061202_00/HL_Cycle_2006120200.html: FORECAST TOOK 2328.3816 SECONDS
20061202_00r/HL_Cycle_2006120200r.html: FORECAST TOOK 414.6779 SECONDS