> Btw, is this a compiler with checking enabled?
As fas as I can tell, yes.
> If so try comparing numbers with --enable-checking=release.
I am more interested to compare times rather than get the lowest possible
number.
The following update of the timings shows that the compile time is
worsening without positive impact on the execution time:
compile execute
07/13 06/15 06/08 04/13 07/13 06/15
06/08 04/13
ac 6.101 6.098 4.169 3.754 141.067 141.335
141.271 140.479
aermod 280.850 266.403 205.639 196.447 93.914 92.756
93.583 90.632
air 15.823 14.773 11.925 11.541 41.598 40.149
41.533 39.399
capacita 7.545 7.332 5.542 5.154 177.666 175.615
176.229 177.222
channel 4.224 4.289 2.519 2.279 15.713 15.664
15.947 15.732
doduc 38.834 37.700 28.040 26.679 68.604 68.599
68.895 68.195
fatigue 14.897 12.843 8.733 8.293 24.459 23.766
24.795 23.061
gas_dyn 11.893 11.856 8.168 7.598 54.018 53.942
53.929 52.100
induct 37.131 36.878 23.671 22.445 71.680 72.247
73.031 69.283
linpk 2.389 2.419 1.979 1.910 33.435 33.489
33.844 33.446
mdbx 9.428 9.052 7.036 6.716 32.566 32.542
32.543 32.985
nf 5.409 5.412 3.629 3.357 57.328 51.424
51.404 58.494
protein 20.167 20.097 13.162 13.063 72.809 70.825
70.113 70.896
rnflow 19.958 19.812 14.370 14.196 77.149 76.936
77.419 76.371
test_fpu 17.483 17.098 12.034 11.396 37.146 37.336
37.324 37.697
tfft 2.513 2.530 1.938 1.779 16.602 16.653
16.831 16.581
total 494.645 474.592 352.554 336.607 1015.754 1003.278
1008.691 1002.573
I have done the following comparison of the compile time for induct.f90
with -ftime-report.
Half of the ~15s is coming from 'loop analysis' (7s) and 'expand' account for
1s.
Assuming that the lines starting by 'df' were introduced by the
'dataflow' patch, it can explain directly at most a few seconds.
Does anybody understand why 'loop analysis' takes so much time on Darwin7?
TIA
Dominique
gcc version 4.3.0 20070713 (experimental)
[karma] lin/source% time gfortran -ftime-report -O3 -ffast-math -funroll-loops
induct.f90
Execution times (seconds)
loop analysis : 7.56 (21%) usr 0.19 ( 6%) sys 7.80 (19%) wall
1192 kB ( 2%) ggc
tree STMT verifier : 4.80 (13%) usr 0.62 (19%) sys 5.34 (13%) wall
2 kB ( 0%) ggc
tree SSA verifier : 3.70 (10%) usr 0.07 ( 2%) sys 3.87 (10%) wall
26 kB ( 0%) ggc
expand : 1.99 ( 6%) usr 0.18 ( 6%) sys 2.21 ( 5%) wall
4996 kB (10%) ggc
tree operand scan : 0.96 ( 3%) usr 0.56 (17%) sys 1.50 ( 4%) wall
2180 kB ( 4%) ggc
global alloc : 0.79 ( 2%) usr 0.08 ( 2%) sys 0.85 ( 2%) wall
1065 kB ( 2%) ggc
scheduling : 0.73 ( 2%) usr 0.06 ( 2%) sys 0.81 ( 2%) wall
285 kB ( 1%) ggc
tree PRE : 0.72 ( 2%) usr 0.04 ( 1%) sys 0.78 ( 2%) wall
2445 kB ( 5%) ggc
rename registers : 0.69 ( 2%) usr 0.02 ( 1%) sys 0.73 ( 2%) wall
257 kB ( 1%) ggc
CSE : 0.66 ( 2%) usr 0.06 ( 2%) sys 0.67 ( 2%) wall
264 kB ( 1%) ggc
scheduling 2 : 0.62 ( 2%) usr 0.01 ( 0%) sys 0.63 ( 2%) wall
60 kB ( 0%) ggc
CFG verifier : 0.62 ( 2%) usr 0.04 ( 1%) sys 0.48 ( 1%) wall
0 kB ( 0%) ggc
df live regs : 0.61 ( 2%) usr 0.00 ( 0%) sys 0.68 ( 2%) wall
0 kB ( 0%) ggc
parser : 0.54 ( 2%) usr 0.08 ( 2%) sys 0.86 ( 2%) wall
3631 kB ( 7%) ggc
garbage collection : 0.49 ( 1%) usr 0.05 ( 2%) sys 0.56 ( 1%) wall
0 kB ( 0%) ggc
if-conversion : 0.44 ( 1%) usr 0.00 ( 0%) sys 0.45 ( 1%) wall
61 kB ( 0%) ggc
combiner : 0.43 ( 1%) usr 0.00 ( 0%) sys 0.49 ( 1%) wall
912 kB ( 2%) ggc
local alloc : 0.41 ( 1%) usr 0.01 ( 0%) sys 0.44 ( 1%) wall
752 kB ( 2%) ggc
tree iv optimization : 0.40 ( 1%) usr 0.07 ( 2%) sys 0.43 ( 1%) wall
7302 kB (15%) ggc
reload CSE regs : 0.32 ( 1%) usr 0.00 ( 0%) sys 0.33 ( 1%) wall
941 kB ( 2%) ggc
forward prop : 0.32 ( 1%) usr 0.03 ( 1%) sys 0.37 ( 1%) wall
550 kB ( 1%) ggc
alias analysis : 0.31 ( 1%) usr 0.00 ( 0%) sys 0.40 ( 1%) wall
1398 kB ( 3%) ggc
dead code elimination : 0.30 ( 1%) usr 0.01 ( 0%) sys 0.30 ( 1%) wall
1 kB ( 0%) ggc
tree VRP : 0.29 ( 1%) usr 0.04 ( 1%) sys 0.33 ( 1%) wall
1380 kB ( 3%) ggc
dominator optimization: 0.29 ( 1%) usr 0.03 ( 1%) sys 0.33 ( 1%) wall
2305 kB ( 5%) ggc
CSE 2 : 0.29 ( 1%) usr 0.04 ( 1%) sys 0.35 ( 1%) wall
136 kB ( 0%) ggc
df reaching defs : 0.28 ( 1%) usr 0.18 ( 6%) sys 0.46 ( 1%) wall
0 kB ( 0%) ggc
tree PTA : 0.27 ( 1%) usr 0.01 ( 0%) sys 0.32 ( 1%) wall
134 kB ( 0%) ggc
dead store elim1 : 0.26 ( 1%) usr 0.00 ( 0%) sys 0.24 ( 1%) wall
387 kB ( 1%) ggc
regmove : 0.25 ( 1%) usr 0.01 ( 0%) sys 0.24 ( 1%) wall
3 kB ( 0%) ggc
df live&initialized regs: 0.25 ( 1%) usr 0.00 ( 0%) sys 0.23 ( 1%) wall
0 kB ( 0%) ggc
tree alias analysis : 0.24 ( 1%) usr 0.31 (10%) sys 0.58 ( 1%) wall
70 kB ( 0%) ggc
tree SSA incremental : 0.22 ( 1%) usr 0.04 ( 1%) sys 0.39 ( 1%) wall
294 kB ( 1%) ggc
tree gimplify : 0.21 ( 1%) usr 0.00 ( 0%) sys 0.28 ( 1%) wall
1833 kB ( 4%) ggc
peephole 2 : 0.19 ( 1%) usr 0.00 ( 0%) sys 0.17 ( 0%) wall
1 kB ( 0%) ggc
tree SSA rewrite : 0.18 ( 1%) usr 0.01 ( 0%) sys 0.15 ( 0%) wall
2388 kB ( 5%) ggc
tree FRE : 0.18 ( 1%) usr 0.03 ( 1%) sys 0.22 ( 1%) wall
1547 kB ( 3%) ggc
df reg dead/unused notes: 0.18 ( 1%) usr 0.01 ( 0%) sys 0.20 ( 0%) wall
354 kB ( 1%) ggc
complete unrolling : 0.18 ( 1%) usr 0.05 ( 2%) sys 0.20 ( 0%) wall
674 kB ( 1%) ggc
auto inc dec : 0.18 ( 1%) usr 0.00 ( 0%) sys 0.22 ( 1%) wall
2 kB ( 0%) ggc
web : 0.17 ( 0%) usr 0.01 ( 0%) sys 0.21 ( 1%) wall
42 kB ( 0%) ggc
final : 0.17 ( 0%) usr 0.02 ( 1%) sys 0.20 ( 0%) wall
16 kB ( 0%) ggc
dead store elim2 : 0.17 ( 0%) usr 0.00 ( 0%) sys 0.19 ( 0%) wall
396 kB ( 1%) ggc
df use-def / def-use chains: 0.15 ( 0%) usr 0.00 ( 0%) sys 0.18 ( 0%)
wall 0 kB ( 0%) ggc
tree CFG cleanup : 0.14 ( 0%) usr 0.03 ( 1%) sys 0.11 ( 0%) wall
232 kB ( 0%) ggc
if-conversion 2 : 0.14 ( 0%) usr 0.00 ( 0%) sys 0.17 ( 0%) wall
25 kB ( 0%) ggc
global CSE : 0.14 ( 0%) usr 0.02 ( 1%) sys 0.16 ( 0%) wall
0 kB ( 0%) ggc
bypass jumps : 0.13 ( 0%) usr 0.01 ( 0%) sys 0.16 ( 0%) wall
312 kB ( 1%) ggc
trivially dead code : 0.12 ( 0%) usr 0.01 ( 0%) sys 0.12 ( 0%) wall
0 kB ( 0%) ggc
register information : 0.12 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
callgraph construction: 0.12 ( 0%) usr 0.01 ( 0%) sys 0.14 ( 0%) wall
713 kB ( 1%) ggc
inline heuristics : 0.11 ( 0%) usr 0.01 ( 0%) sys 0.16 ( 0%) wall
4 kB ( 0%) ggc
tree SSA to normal : 0.10 ( 0%) usr 0.01 ( 0%) sys 0.10 ( 0%) wall
502 kB ( 1%) ggc
CPROP 2 : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
246 kB ( 1%) ggc
cfg cleanup : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
62 kB ( 0%) ggc
tree SSA other : 0.08 ( 0%) usr 0.07 ( 2%) sys 0.13 ( 0%) wall
0 kB ( 0%) ggc
dominance computation : 0.08 ( 0%) usr 0.01 ( 0%) sys 0.11 ( 0%) wall
0 kB ( 0%) ggc
tree conservative DCE : 0.07 ( 0%) usr 0.02 ( 1%) sys 0.10 ( 0%) wall
0 kB ( 0%) ggc
thread pro- & epilogue: 0.07 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
160 kB ( 0%) ggc
rebuild jump labels : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
0 kB ( 0%) ggc
tree copy propagation : 0.06 ( 0%) usr 0.01 ( 0%) sys 0.12 ( 0%) wall
92 kB ( 0%) ggc
tree CCP : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
98 kB ( 0%) ggc
callgraph optimization: 0.06 ( 0%) usr 0.01 ( 0%) sys 0.15 ( 0%) wall
394 kB ( 1%) ggc
PRE : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
340 kB ( 1%) ggc
predictive commoning : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
408 kB ( 1%) ggc
callgraph verifier : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
100 kB ( 0%) ggc
branch prediction : 0.05 ( 0%) usr 0.01 ( 0%) sys 0.11 ( 0%) wall
249 kB ( 1%) ggc
tree store copy prop : 0.04 ( 0%) usr 0.01 ( 0%) sys 0.04 ( 0%) wall
8 kB ( 0%) ggc
register scan : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
5 kB ( 0%) ggc
dominance frontiers : 0.04 ( 0%) usr 0.01 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
df uninitialized regs 2: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
CPROP 1 : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
328 kB ( 1%) ggc
tree rename SSA copies: 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree loop bounds : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
221 kB ( 0%) ggc
tree find ref. vars : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
350 kB ( 1%) ggc
tree aggressive DCE : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree STORE-CCP : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
32 kB ( 0%) ggc
lower subreg : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
loop invariant motion : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
33 kB ( 0%) ggc
tree reassociation : 0.02 ( 0%) usr 0.02 ( 1%) sys 0.04 ( 0%) wall
47 kB ( 0%) ggc
tree memory partitioning: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
1 kB ( 0%) ggc
tree loop unswitching : 0.02 ( 0%) usr 0.01 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree loop init : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
60 kB ( 0%) ggc
tree linearize phis : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
3 kB ( 0%) ggc
tree code sinking : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
52 kB ( 0%) ggc
tree CFG construction : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
1629 kB ( 3%) ggc
reorder blocks : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
113 kB ( 0%) ggc
ipa type escape : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree split crit edges : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
168 kB ( 0%) ggc
tree loop fini : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree if-combine : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree eh : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree SSA uncprop : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree SRA : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.06 ( 0%) wall
21 kB ( 0%) ggc
tree DSE : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
13 kB ( 0%) ggc
load CSE after reload : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
5 kB ( 0%) ggc
ipa reference : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1 kB ( 0%) ggc
tree forward propagate: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
65 kB ( 0%) ggc
tree copy headers : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
185 kB ( 0%) ggc
tree canonical iv : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
168 kB ( 0%) ggc
tree PHI insertion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
77 kB ( 0%) ggc
tree PHI const/copy prop: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
TOTAL : 35.78 3.26 40.29
48650 kB
Extra diagnostic checks enabled; compiler may run slowly.
Configure with --enable-checking=release to disable checks.
35.900u 3.520s 0:41.82 94.2% 0+0k 89+23io 0pf+0w
gcc version 4.3.0 20070413 (experimental)
[karma] lin/source% time gfortran -ftime-report -O3 -ffast-math -funroll-loops
induct.f90
Execution times (seconds)
loop analysis : 0.57 ( 3%) usr 0.09 ( 3%) sys 0.70 ( 3%) wall
805 kB ( 2%) ggc
tree STMT verifier : 4.36 (21%) usr 0.62 (23%) sys 5.23 (22%) wall
0 kB ( 0%) ggc
tree SSA verifier : 3.15 (15%) usr 0.12 ( 4%) sys 3.19 (13%) wall
24 kB ( 0%) ggc
expand : 0.57 ( 3%) usr 0.03 ( 1%) sys 0.67 ( 3%) wall
5407 kB (12%) ggc
tree operand scan : 0.97 ( 5%) usr 0.48 (18%) sys 1.47 ( 6%) wall
2265 kB ( 5%) ggc
global alloc : 0.58 ( 3%) usr 0.00 ( 0%) sys 0.53 ( 2%) wall
1048 kB ( 2%) ggc
scheduling : 0.51 ( 2%) usr 0.07 ( 3%) sys 0.60 ( 2%) wall
319 kB ( 1%) ggc
tree PRE : 0.76 ( 4%) usr 0.02 ( 1%) sys 0.79 ( 3%) wall
1271 kB ( 3%) ggc
rename registers : 0.49 ( 2%) usr 0.00 ( 0%) sys 0.44 ( 2%) wall
242 kB ( 1%) ggc
CSE : 0.28 ( 1%) usr 0.06 ( 2%) sys 0.32 ( 1%) wall
217 kB ( 0%) ggc
scheduling 2 : 0.46 ( 2%) usr 0.01 ( 0%) sys 0.44 ( 2%) wall
0 kB ( 0%) ggc
CFG verifier : 0.45 ( 2%) usr 0.03 ( 1%) sys 0.55 ( 2%) wall
0 kB ( 0%) ggc
parser : 0.42 ( 2%) usr 0.11 ( 4%) sys 0.62 ( 3%) wall
3580 kB ( 8%) ggc
garbage collection : 0.39 ( 2%) usr 0.02 ( 1%) sys 0.45 ( 2%) wall
0 kB ( 0%) ggc
combiner : 0.26 ( 1%) usr 0.00 ( 0%) sys 0.25 ( 1%) wall
916 kB ( 2%) ggc
local alloc : 0.24 ( 1%) usr 0.01 ( 0%) sys 0.32 ( 1%) wall
735 kB ( 2%) ggc
tree iv optimization : 0.51 ( 2%) usr 0.03 ( 1%) sys 0.56 ( 2%) wall
8342 kB (18%) ggc
reload CSE regs : 0.28 ( 1%) usr 0.00 ( 0%) sys 0.33 ( 1%) wall
897 kB ( 2%) ggc
forward prop : 0.42 ( 2%) usr 0.04 ( 1%) sys 0.50 ( 2%) wall
453 kB ( 1%) ggc
alias analysis : 0.29 ( 1%) usr 0.00 ( 0%) sys 0.20 ( 1%) wall
1375 kB ( 3%) ggc
tree VRP : 0.20 ( 1%) usr 0.04 ( 1%) sys 0.31 ( 1%) wall
1337 kB ( 3%) ggc
dominator optimization: 0.26 ( 1%) usr 0.04 ( 1%) sys 0.34 ( 1%) wall
2048 kB ( 4%) ggc
CSE 2 : 0.22 ( 1%) usr 0.02 ( 1%) sys 0.23 ( 1%) wall
79 kB ( 0%) ggc
tree PTA : 0.20 ( 1%) usr 0.03 ( 1%) sys 0.28 ( 1%) wall
146 kB ( 0%) ggc
regmove : 0.11 ( 1%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
2 kB ( 0%) ggc
tree alias analysis : 0.24 ( 1%) usr 0.29 (11%) sys 0.57 ( 2%) wall
70 kB ( 0%) ggc
tree SSA incremental : 0.28 ( 1%) usr 0.04 ( 1%) sys 0.29 ( 1%) wall
323 kB ( 1%) ggc
tree gimplify : 0.18 ( 1%) usr 0.00 ( 0%) sys 0.19 ( 1%) wall
1846 kB ( 4%) ggc
peephole 2 : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree SSA rewrite : 0.13 ( 1%) usr 0.00 ( 0%) sys 0.15 ( 1%) wall
2412 kB ( 5%) ggc
tree FRE : 0.10 ( 0%) usr 0.01 ( 0%) sys 0.08 ( 0%) wall
463 kB ( 1%) ggc
complete unrolling : 0.19 ( 1%) usr 0.05 ( 2%) sys 0.18 ( 1%) wall
834 kB ( 2%) ggc
web : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
34 kB ( 0%) ggc
final : 0.11 ( 1%) usr 0.01 ( 0%) sys 0.14 ( 1%) wall
15 kB ( 0%) ggc
tree CFG cleanup : 0.17 ( 1%) usr 0.03 ( 1%) sys 0.12 ( 0%) wall
361 kB ( 1%) ggc
global CSE : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
bypass jumps : 0.12 ( 1%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
216 kB ( 0%) ggc
trivially dead code : 0.14 ( 1%) usr 0.01 ( 0%) sys 0.12 ( 0%) wall
0 kB ( 0%) ggc
callgraph construction: 0.10 ( 0%) usr 0.01 ( 0%) sys 0.11 ( 0%) wall
634 kB ( 1%) ggc
inline heuristics : 0.13 ( 1%) usr 0.02 ( 1%) sys 0.13 ( 1%) wall
4 kB ( 0%) ggc
tree SSA to normal : 0.09 ( 0%) usr 0.02 ( 1%) sys 0.08 ( 0%) wall
531 kB ( 1%) ggc
CPROP 2 : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
249 kB ( 1%) ggc
cfg cleanup : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
68 kB ( 0%) ggc
tree SSA other : 0.06 ( 0%) usr 0.11 ( 4%) sys 0.14 ( 1%) wall
0 kB ( 0%) ggc
dominance computation : 0.08 ( 0%) usr 0.10 ( 4%) sys 0.20 ( 1%) wall
0 kB ( 0%) ggc
tree conservative DCE : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
rebuild jump labels : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
0 kB ( 0%) ggc
tree copy propagation : 0.14 ( 1%) usr 0.02 ( 1%) sys 0.14 ( 1%) wall
70 kB ( 0%) ggc
tree CCP : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
100 kB ( 0%) ggc
callgraph optimization: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
394 kB ( 1%) ggc
PRE : 0.08 ( 0%) usr 0.01 ( 0%) sys 0.07 ( 0%) wall
345 kB ( 1%) ggc
callgraph verifier : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
100 kB ( 0%) ggc
branch prediction : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
207 kB ( 0%) ggc
tree store copy prop : 0.03 ( 0%) usr 0.01 ( 0%) sys 0.04 ( 0%) wall
8 kB ( 0%) ggc
register scan : 0.11 ( 1%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
4 kB ( 0%) ggc
dominance frontiers : 0.00 ( 0%) usr 0.01 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
CPROP 1 : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
327 kB ( 1%) ggc
tree rename SSA copies: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree loop bounds : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
175 kB ( 0%) ggc
tree find ref. vars : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
350 kB ( 1%) ggc
tree aggressive DCE : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree STORE-CCP : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
33 kB ( 0%) ggc
lower subreg : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
loop invariant motion : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
37 kB ( 0%) ggc
tree reassociation : 0.03 ( 0%) usr 0.02 ( 1%) sys 0.02 ( 0%) wall
42 kB ( 0%) ggc
tree memory partitioning: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
1 kB ( 0%) ggc
tree loop unswitching : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree loop init : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
6 kB ( 0%) ggc
tree linearize phis : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
4 kB ( 0%) ggc
tree code sinking : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
10 kB ( 0%) ggc
tree CFG construction : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
1645 kB ( 4%) ggc
reorder blocks : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
114 kB ( 0%) ggc
ipa type escape : 0.02 ( 0%) usr 0.01 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree split crit edges : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
287 kB ( 1%) ggc
tree eh : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree SRA : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
22 kB ( 0%) ggc
tree DSE : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
12 kB ( 0%) ggc
load CSE after reload : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.01 ( 0%) wall
10 kB ( 0%) ggc
ipa reference : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1 kB ( 0%) ggc
tree copy headers : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
209 kB ( 0%) ggc
tree canonical iv : 0.03 ( 0%) usr 0.01 ( 0%) sys 0.01 ( 0%) wall
175 kB ( 0%) ggc
tree PHI insertion : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
83 kB ( 0%) ggc
life analysis : 0.36 ( 2%) usr 0.00 ( 0%) sys 0.42 ( 2%) wall
413 kB ( 1%) ggc
life info update : 0.20 ( 1%) usr 0.00 ( 0%) sys 0.17 ( 1%) wall
33 kB ( 0%) ggc
PHI merge : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
44 kB ( 0%) ggc
scev constant prop : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
37 kB ( 0%) ggc
flow analysis : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
flow 2 : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
169 kB ( 0%) ggc
shorten branches : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
symout : 0.00 ( 0%) usr 0.01 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
TOTAL : 21.22 2.68 24.21
45583 kB
Extra diagnostic checks enabled; compiler may run slowly.
Configure with --disable-checking to disable checks.
21.330u 2.880s 0:24.94 97.0% 0+0k 28+23io 0pf+0w