$ time cat /tmp/n2.txt | ./nfactor4 +RTS -sstderr -p
2
2
0
8
1
78734
288726
379720
208034
42492
2285
8
0
0
0
923,210,584 bytes allocated in the heap
996,236,400 bytes copied during GC
321,372,456 bytes maximum residency (7 sample(s))
4,069,728 bytes maximum slop
496 MB total memory in use (0 MB lost due to fragmentation)
Tot time (elapsed) Avg pause Max pause
Gen 0 1450 colls, 0 par 0.74s 0.74s 0.0005s 0.0195s
Gen 1 7 colls, 0 par 1.00s 1.00s 0.1424s 0.3483s
INIT time 0.00s ( 0.00s elapsed)
MUT time 0.62s ( 0.61s elapsed)
GC time 1.73s ( 1.73s elapsed)
RP time 0.00s ( 0.00s elapsed)
PROF time 0.00s ( 0.00s elapsed)
EXIT time 0.09s ( 0.09s elapsed)
Total time 2.44s ( 2.44s elapsed)
%GC time 71.0% (71.2% elapsed)
Alloc rate 1,500,811,457 bytes per MUT second
Productivity 28.9% of total user, 29.0% of total elapsed
[1]+ Done emacs nfactor4.hs
real 0m2.445s
user 0m2.095s
sys 0m0.351s
From profiling data (nfactor4.prof is the full profiling data), below functions leak hell lot of space:
buildnfactscache.go Main 138 1000000 30.8 54.9 41.3 54.9