------- Comment #3 from jaydub66 at gmail dot com 2008-01-05 23:46 -------
(In reply to comment #2)
> Can you give the output of the compiler when -ftime-report is added?
Sure thing, thanks for the remark. Here it goes:
gfortran-4.3 -c -ftime-report -O1 -fstrict-aliasing Amplitudes.f90
Execution times (seconds)
garbage collection : 0.21 ( 0%) usr 0.02 ( 2%) sys 0.24 ( 0%) wall
0 kB ( 0%) ggc
callgraph construction: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
299 kB ( 0%) ggc
callgraph optimization: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
62 kB ( 0%) ggc
trivially dead code : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
df reaching defs : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
df live regs : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
df live&initialized regs: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
df reg dead/unused notes: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
127 kB ( 0%) ggc
register information : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
alias analysis : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
196 kB ( 0%) ggc
rebuild jump labels : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
parser : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
1848 kB ( 0%) ggc
inline heuristics : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
1 kB ( 0%) ggc
tree gimplify : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
847 kB ( 0%) ggc
tree CFG construction : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
769 kB ( 0%) ggc
tree CFG cleanup : 4.20 ( 5%) usr 0.06 ( 7%) sys 4.60 ( 5%) wall
2550 kB ( 0%) ggc
tree copy propagation : 0.25 ( 0%) usr 0.01 ( 1%) sys 0.31 ( 0%) wall
24 kB ( 0%) ggc
tree PTA : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
67 kB ( 0%) ggc
tree alias analysis : 0.01 ( 0%) usr 0.01 ( 1%) sys 0.01 ( 0%) wall
2 kB ( 0%) ggc
tree call clobbering : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
tree flow sensitive alias: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
16 kB ( 0%) ggc
tree memory partitioning: 0.07 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
0 kB ( 0%) ggc
tree SSA rewrite : 0.48 ( 1%) usr 0.01 ( 1%) sys 0.53 ( 1%) wall
8455 kB ( 1%) ggc
tree SSA other : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree SSA incremental : 3.26 ( 4%) usr 0.08 ( 9%) sys 3.62 ( 4%) wall
19615 kB ( 2%) ggc
tree operand scan : 49.67 (63%) usr 0.48 (52%) sys 57.11 (64%) wall
247409 kB (30%) ggc
dominator optimization: 0.85 ( 1%) usr 0.02 ( 2%) sys 1.57 ( 2%) wall
14019 kB ( 2%) ggc
tree SRA : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
27 kB ( 0%) ggc
tree STORE-CCP : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
1 kB ( 0%) ggc
tree CCP : 0.07 ( 0%) usr 0.01 ( 1%) sys 0.08 ( 0%) wall
15 kB ( 0%) ggc
tree PHI const/copy prop: 0.35 ( 0%) usr 0.00 ( 0%) sys 0.37 ( 0%) wall
0 kB ( 0%) ggc
tree split crit edges : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
2489 kB ( 0%) ggc
tree reassociation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
72 kB ( 0%) ggc
tree FRE : 16.12 (20%) usr 0.17 (18%) sys 16.75 (19%) wall
505793 kB (62%) ggc
tree code sinking : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
41 kB ( 0%) ggc
tree forward propagate: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
7 kB ( 0%) ggc
tree conservative DCE : 0.18 ( 0%) usr 0.00 ( 0%) sys 0.19 ( 0%) wall
0 kB ( 0%) ggc
tree aggressive DCE : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
tree DSE : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
1879 kB ( 0%) ggc
tree loop bounds : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
160 kB ( 0%) ggc
loop invariant motion : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1 kB ( 0%) ggc
tree canonical iv : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
138 kB ( 0%) ggc
scev constant prop : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
68 kB ( 0%) ggc
complete unrolling : 0.30 ( 0%) usr 0.01 ( 1%) sys 0.36 ( 0%) wall
2694 kB ( 0%) ggc
tree iv optimization : 0.17 ( 0%) usr 0.00 ( 0%) sys 0.20 ( 0%) wall
3958 kB ( 0%) ggc
tree loop init : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
52 kB ( 0%) ggc
tree copy headers : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
1280 kB ( 0%) ggc
tree SSA uncprop : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree SSA to normal : 0.11 ( 0%) usr 0.01 ( 1%) sys 0.12 ( 0%) wall
274 kB ( 0%) ggc
tree rename SSA copies: 0.05 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
0 kB ( 0%) ggc
dominance frontiers : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
dominance computation : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
expand : 0.91 ( 1%) usr 0.02 ( 2%) sys 1.01 ( 1%) wall
3726 kB ( 0%) ggc
lower subreg : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
8 kB ( 0%) ggc
CSE : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
49 kB ( 0%) ggc
dead code elimination : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
dead store elim1 : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
249 kB ( 0%) ggc
dead store elim2 : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
214 kB ( 0%) ggc
loop analysis : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
83 kB ( 0%) ggc
branch prediction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
154 kB ( 0%) ggc
combiner : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
485 kB ( 0%) ggc
if-conversion : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
58 kB ( 0%) ggc
local alloc : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
217 kB ( 0%) ggc
global alloc : 0.26 ( 0%) usr 0.01 ( 1%) sys 0.28 ( 0%) wall
1050 kB ( 0%) ggc
reload CSE regs : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
258 kB ( 0%) ggc
thread pro- & epilogue: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
5 kB ( 0%) ggc
rename registers : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
machine dep reorg : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
reg stack : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
34 kB ( 0%) ggc
final : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
TOTAL : 79.11 0.92 89.22
822312 kB
So we have 30% for "tree operand scan" and 62% for "tree FRE". I have no idea
what that means though. I hope you do ;)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34683