https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80960
--- Comment #4 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
I thought I recognized the Maple style here :-)
Compiling with 6.3.0 on a machine with enough memory gives
(gdb) r -fdefault-integer-8 -O2 tst.f90
Starting program: /usr/lib/gcc/x86_64-linux-gnu/6/f951 -fdefault-integer-8 -O2
tst.f90
getparams setparams describemodel getfhess getfgrad getf computegammas
setparams_fe describemodel_fe initmodel_fe
Analyzing compilation unit
Performing interprocedural optimizations
<*free_lang_data> <visibility> <build_ssa_passes> <opt_local_passes>
<targetclone> <free-inline-summary> <whole-program> <profile_estimate> <icf>
<devirt> <cp> <inline> <pure-const> <static-var> <single-use>
<comdats>Assembling functions:
<simdclone> getparams setparams describemodel getfhess {GC 2644206k -> 46376k}
{GC 1438844k -> 59615k} getfgrad {GC 446867k -> 22490k} getf computegammas
setparams_fe describemodel_fe initmodel_fe
Execution times (seconds)
phase setup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
179 kB ( 0%) ggc
phase parsing : 0.28 ( 0%) usr 0.26 (16%) sys 0.55 ( 0%) wall
9876 kB ( 0%) ggc
phase opt and generate : 134.86 (100%) usr 1.40 (84%) sys 136.35 (100%)
wall 4511154 kB (100%) ggc
phase last asm : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
208 kB ( 0%) ggc
garbage collection : 0.19 ( 0%) usr 0.23 (14%) sys 0.41 ( 0%) wall
0 kB ( 0%) ggc
callgraph construction : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
16005 kB ( 0%) ggc
callgraph optimization : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
14 kB ( 0%) ggc
ipa dead code removal : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
ipa inlining heuristics : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
23 kB ( 0%) ggc
ipa profile : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
ipa pure const : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1 kB ( 0%) ggc
ipa icf : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
cfg cleanup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
trivially dead code : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
df scan insns : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
df multiple defs : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
df reaching defs : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
0 kB ( 0%) ggc
df live regs : 0.32 ( 0%) usr 0.00 ( 0%) sys 0.32 ( 0%) wall
0 kB ( 0%) ggc
df live&initialized regs: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
0 kB ( 0%) ggc
df must-initialized regs: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
df use-def / def-use chains: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%)
wall 0 kB ( 0%) ggc
df reg dead/unused notes: 0.16 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall
3359 kB ( 0%) ggc
register information : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
alias analysis : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.13 ( 0%) wall
18870 kB ( 0%) ggc
alias stmt walking : 13.30 (10%) usr 0.09 ( 5%) sys 13.28 (10%) wall
3 kB ( 0%) ggc
register scan : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
1056 kB ( 0%) ggc
rebuild jump labels : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
parser (global) : 0.28 ( 0%) usr 0.26 (16%) sys 0.55 ( 0%) wall
8744 kB ( 0%) ggc
inline parameters : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
15 kB ( 0%) ggc
tree gimplify : 0.14 ( 0%) usr 0.01 ( 1%) sys 0.13 ( 0%) wall
25267 kB ( 1%) ggc
tree CFG cleanup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree VRP : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
51 kB ( 0%) ggc
tree copy propagation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree PTA : 0.25 ( 0%) usr 0.00 ( 0%) sys 0.25 ( 0%) wall
7 kB ( 0%) ggc
tree SSA rewrite : 0.01 ( 0%) usr 0.01 ( 1%) sys 0.02 ( 0%) wall
10619 kB ( 0%) ggc
tree SSA other : 0.04 ( 0%) usr 0.01 ( 1%) sys 0.05 ( 0%) wall
1 kB ( 0%) ggc
tree operand scan : 0.03 ( 0%) usr 0.01 ( 1%) sys 0.05 ( 0%) wall
6330 kB ( 0%) ggc
dominator optimization : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
3184 kB ( 0%) ggc
tree CCP : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
3 kB ( 0%) ggc
tree split crit edges : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
7 kB ( 0%) ggc
tree reassociation : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree PRE : 1.85 ( 1%) usr 0.00 ( 0%) sys 1.98 ( 1%) wall
2938 kB ( 0%) ggc
tree FRE : 0.23 ( 0%) usr 0.00 ( 0%) sys 0.21 ( 0%) wall
5651 kB ( 0%) ggc
tree linearize phis : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
10 kB ( 0%) ggc
tree backward propagate : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
tree forward propagate : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
3 kB ( 0%) ggc
tree conservative DCE : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree aggressive DCE : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
25 kB ( 0%) ggc
tree DSE : 0.37 ( 0%) usr 0.00 ( 0%) sys 0.35 ( 0%) wall
0 kB ( 0%) ggc
out of ssa : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
expand vars : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
5796 kB ( 0%) ggc
expand : 0.06 ( 0%) usr 0.01 ( 1%) sys 0.07 ( 0%) wall
17953 kB ( 0%) ggc
post expand cleanups : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
3 kB ( 0%) ggc
varconst : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
1131 kB ( 0%) ggc
forward prop : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
4534 kB ( 0%) ggc
CSE : 0.55 ( 0%) usr 0.00 ( 0%) sys 0.55 ( 0%) wall
4 kB ( 0%) ggc
dead code elimination : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
0 kB ( 0%) ggc
dead store elim1 : 2.21 ( 2%) usr 0.01 ( 1%) sys 2.21 ( 2%) wall
3578 kB ( 0%) ggc
dead store elim2 : 6.19 ( 5%) usr 0.00 ( 0%) sys 6.19 ( 5%) wall
1593523 kB (35%) ggc
CSE 2 : 0.56 ( 0%) usr 0.00 ( 0%) sys 0.56 ( 0%) wall
1 kB ( 0%) ggc
branch prediction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
12 kB ( 0%) ggc
combiner : 74.97 (55%) usr 0.90 (54%) sys 75.93 (55%) wall
2701134 kB (60%) ggc
integrated RA : 9.47 ( 7%) usr 0.05 ( 3%) sys 9.50 ( 7%) wall
34802 kB ( 1%) ggc
LRA non-specific : 1.60 ( 1%) usr 0.00 ( 0%) sys 1.60 ( 1%) wall
12647 kB ( 0%) ggc
LRA virtuals elimination: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
3908 kB ( 0%) ggc
LRA reload inheritance : 0.54 ( 0%) usr 0.00 ( 0%) sys 0.52 ( 0%) wall
13222 kB ( 0%) ggc
LRA create live ranges : 0.79 ( 1%) usr 0.00 ( 0%) sys 0.81 ( 1%) wall
3330 kB ( 0%) ggc
LRA hard reg assignment : 15.83 (12%) usr 0.06 ( 4%) sys 15.90 (12%) wall
0 kB ( 0%) ggc
LRA coalesce pseudo regs: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
LRA rematerialization : 0.18 ( 0%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall
0 kB ( 0%) ggc
reload : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
reload CSE regs : 2.33 ( 2%) usr 0.00 ( 0%) sys 2.33 ( 2%) wall
6021 kB ( 0%) ggc
ree : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
thread pro- & epilogue : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
15 kB ( 0%) ggc
combine stack adjustments: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
peephole 2 : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1268 kB ( 0%) ggc
hard reg cprop : 0.12 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
389 kB ( 0%) ggc
scheduling 2 : 0.93 ( 1%) usr 0.01 ( 1%) sys 0.94 ( 1%) wall
13768 kB ( 0%) ggc
shorten branches : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
0 kB ( 0%) ggc
final : 0.17 ( 0%) usr 0.00 ( 0%) sys 0.17 ( 0%) wall
19 kB ( 0%) ggc
variable output : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
initialize rtl : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
12 kB ( 0%) ggc
rest of compilation : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
97 kB ( 0%) ggc
remove unused locals : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
address taken : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
unaccounted todo : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
1445 kB ( 0%) ggc
TOTAL : 135.16 1.66 136.92
4521418 kB
[Inferior 1 (process 16943) exited normally]
so approximately 4.5 GB. Hmmm...
Comparing this to 4.3.2 (really old) gives
Warning: Reading file '<stdin>' as free form
.file "<stdin>"
.ident "GCC: (Debian 4.3.2-1.1) 4.3.2"
.section .note.GNU-stack,"",@progbits
Execution times (seconds)
TOTAL : 0.00 0.00 2.28
645 kB
tkoenig@gcc14:~$ /usr/lib/gcc/x86_64-linux-gnu/4.3.2/f951 -fdefault-integer-8
-O2 tst.f90
getparams setparams describemodel getfhess getfgrad getf computegammas
setparams_fe describemodel_fe initmodel_fe
Analyzing compilation unit
Performing interprocedural optimizations
<visibility> <early_local_cleanups> <inline> <static-var>
<pure-const>Assembling functions:
getparams setparams initmodel_fe describemodel describemodel_fe computegammas
setparams_fe getf getfgrad getfhess
Execution times (seconds)
callgraph construction: 0.13 ( 0%) usr 0.02 ( 4%) sys 0.15 ( 0%) wall
3054 kB ( 1%) ggc
callgraph optimization: 0.20 ( 1%) usr 0.00 ( 0%) sys 0.20 ( 1%) wall
28 kB ( 0%) ggc
ipa reference : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
cfg cleanup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
trivially dead code : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
df reaching defs : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
df live regs : 0.39 ( 1%) usr 0.00 ( 0%) sys 0.42 ( 1%) wall
0 kB ( 0%) ggc
df live&initialized regs: 0.14 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
df use-def / def-use chains: 0.10 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%)
wall 0 kB ( 0%) ggc
df reg dead/unused notes: 0.12 ( 0%) usr 0.00 ( 0%) sys 0.15 ( 0%) wall
3279 kB ( 1%) ggc
register information : 1.49 ( 4%) usr 0.00 ( 0%) sys 1.50 ( 4%) wall
0 kB ( 0%) ggc
alias analysis : 0.23 ( 1%) usr 0.00 ( 0%) sys 0.19 ( 1%) wall
6752 kB ( 3%) ggc
register scan : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
rebuild jump labels : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
0 kB ( 0%) ggc
parser : 0.38 ( 1%) usr 0.03 ( 5%) sys 0.42 ( 1%) wall
11196 kB ( 5%) ggc
inline heuristics : 0.19 ( 1%) usr 0.01 ( 2%) sys 0.21 ( 1%) wall
0 kB ( 0%) ggc
tree gimplify : 0.20 ( 1%) usr 0.04 ( 7%) sys 0.26 ( 1%) wall
30417 kB (14%) ggc
tree eh : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree CFG construction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
10646 kB ( 5%) ggc
tree VRP : 0.15 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall
159 kB ( 0%) ggc
tree copy propagation : 0.25 ( 1%) usr 0.00 ( 0%) sys 0.21 ( 1%) wall
143 kB ( 0%) ggc
tree find ref. vars : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
8397 kB ( 4%) ggc
tree PTA : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
25 kB ( 0%) ggc
tree alias analysis : 0.05 ( 0%) usr 0.02 ( 4%) sys 0.10 ( 0%) wall
4 kB ( 0%) ggc
tree call clobbering : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
3 kB ( 0%) ggc
tree flow sensitive alias: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
3 kB ( 0%) ggc
tree flow insensitive alias: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%)
wall 0 kB ( 0%) ggc
tree memory partitioning: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree PHI insertion : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree SSA rewrite : 0.08 ( 0%) usr 0.01 ( 2%) sys 0.09 ( 0%) wall
15824 kB ( 7%) ggc
tree SSA other : 0.07 ( 0%) usr 0.02 ( 4%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
tree SSA incremental : 0.14 ( 0%) usr 0.00 ( 0%) sys 0.13 ( 0%) wall
25 kB ( 0%) ggc
tree operand scan : 0.20 ( 1%) usr 0.07 (13%) sys 0.28 ( 1%) wall
14719 kB ( 7%) ggc
dominator optimization: 0.42 ( 1%) usr 0.02 ( 4%) sys 0.48 ( 1%) wall
7292 kB ( 3%) ggc
tree SRA : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
tree STORE-CCP : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
2640 kB ( 1%) ggc
tree CCP : 0.13 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall
2029 kB ( 1%) ggc
tree reassociation : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
6 kB ( 0%) ggc
tree PRE : 0.91 ( 3%) usr 0.03 ( 5%) sys 0.93 ( 3%) wall
9987 kB ( 5%) ggc
tree FRE : 0.51 ( 1%) usr 0.01 ( 2%) sys 0.49 ( 1%) wall
10943 kB ( 5%) ggc
tree linearize phis : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree forward propagate: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree conservative DCE : 0.14 ( 0%) usr 0.00 ( 0%) sys 0.20 ( 1%) wall
0 kB ( 0%) ggc
tree aggressive DCE : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
0 kB ( 0%) ggc
tree DSE : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
4 kB ( 0%) ggc
tree iv optimization : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
35 kB ( 0%) ggc
tree SSA to normal : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
10 kB ( 0%) ggc
tree rename SSA copies: 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
expand : 0.57 ( 2%) usr 0.00 ( 0%) sys 0.60 ( 2%) wall
22545 kB (10%) ggc
lower subreg : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
forward prop : 0.26 ( 1%) usr 0.01 ( 2%) sys 0.24 ( 1%) wall
5942 kB ( 3%) ggc
CSE : 1.43 ( 4%) usr 0.00 ( 0%) sys 1.45 ( 4%) wall
7 kB ( 0%) ggc
dead code elimination : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
dead store elim1 : 1.99 ( 6%) usr 0.00 ( 0%) sys 2.00 ( 6%) wall
2028 kB ( 1%) ggc
dead store elim2 : 3.63 (10%) usr 0.00 ( 0%) sys 3.66 (10%) wall
919 kB ( 0%) ggc
CSE 2 : 0.72 ( 2%) usr 0.00 ( 0%) sys 0.72 ( 2%) wall
3 kB ( 0%) ggc
branch prediction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
17 kB ( 0%) ggc
combiner : 0.57 ( 2%) usr 0.00 ( 0%) sys 0.57 ( 2%) wall
9948 kB ( 5%) ggc
regmove : 9.97 (28%) usr 0.00 ( 0%) sys 9.96 (27%) wall
2 kB ( 0%) ggc
local alloc : 0.91 ( 3%) usr 0.01 ( 2%) sys 0.92 ( 3%) wall
1933 kB ( 1%) ggc
global alloc : 3.89 (11%) usr 0.23 (42%) sys 4.12 (11%) wall
17960 kB ( 8%) ggc
reload CSE regs : 1.90 ( 5%) usr 0.01 ( 2%) sys 1.91 ( 5%) wall
8559 kB ( 4%) ggc
thread pro- & epilogue: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
10 kB ( 0%) ggc
if-conversion 2 : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
3 kB ( 0%) ggc
peephole 2 : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
2 kB ( 0%) ggc
rename registers : 0.15 ( 0%) usr 0.00 ( 0%) sys 0.16 ( 0%) wall
0 kB ( 0%) ggc
scheduling 2 : 1.57 ( 4%) usr 0.01 ( 2%) sys 1.61 ( 4%) wall
12369 kB ( 6%) ggc
machine dep reorg : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
0 kB ( 0%) ggc
reorder blocks : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
final : 0.33 ( 1%) usr 0.00 ( 0%) sys 0.32 ( 1%) wall
1 kB ( 0%) ggc
TOTAL : 35.61 0.55 36.29
220664 kB
So 220 MB instead of 4.5 GB. Definitely a large factor.