Skip to content

Commit 7dc9611

Browse files
authored
Merge pull request #6 from OxfordAbstracts/memory-opts
memory opts
2 parents e7b9153 + 5b16061 commit 7dc9611

File tree

3 files changed

+36
-36
lines changed

3 files changed

+36
-36
lines changed

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,11 @@ profile:
8585
spago sources > .spago/sources.txt && \
8686
rm -rf output
8787

88-
@stack exec zsh -- -c 'cd ../application/purs-projects && purs compile --source-globs-file .spago/sources.txt +RTS -sprofile.txt -RTS'
88+
@stack exec zsh -- -c 'cd ../application/purs-projects && purs compile --source-globs-file .spago/sources.txt +RTS -A256m -n16m -sprofile.txt -RTS'
8989
@mv ../application/purs-projects/profile.txt profile.txt
9090

9191
@rm ../application/purs-projects/output/Schema.AdminDashboard/externs.cbor
92-
@stack exec zsh -- -c 'cd ../application/purs-projects && purs compile --source-globs-file .spago/sources.txt +RTS -sprofile.txt -RTS'
92+
@stack exec zsh -- -c 'cd ../application/purs-projects && purs compile --source-globs-file .spago/sources.txt +RTS -A256m -n16m -sprofile.txt -RTS'
9393
@mv ../application/purs-projects/profile.txt profile-admin.txt
9494

9595
.PHONY : build build-dirty run install ghci test test-ghci test-profiling ghcid dev-deps license-generator clean lint lint-hlint

profile-admin.txt

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
1-
'purs' 'compile' '--source-globs-file' '.spago/sources.txt' +RTS '-N' '-sprofile.txt'
2-
765,357,373,648 bytes allocated in the heap
3-
360,583,388,216 bytes copied during GC
4-
6,131,704,224 bytes maximum residency (40 sample(s))
5-
59,567,712 bytes maximum slop
6-
17666 MiB total memory in use (0 MB lost due to fragmentation)
1+
'purs' 'compile' '--source-globs-file' '.spago/sources.txt' +RTS '-N' '-A256m' '-n16m' '-sprofile.txt'
2+
764,715,301,176 bytes allocated in the heap
3+
71,684,539,216 bytes copied during GC
4+
5,771,888,480 bytes maximum residency (8 sample(s))
5+
57,078,368 bytes maximum slop
6+
19290 MiB total memory in use (0 MB lost due to fragmentation)
77

88
Tot time (elapsed) Avg pause Max pause
9-
Gen 0 63238 colls, 63238 par 214.826s 86.156s 0.0014s 0.0344s
10-
Gen 1 40 colls, 39 par 126.759s 24.613s 0.6153s 2.3480s
9+
Gen 0 347 colls, 347 par 109.302s 25.584s 0.0737s 0.8975s
10+
Gen 1 8 colls, 7 par 33.883s 6.849s 0.8561s 2.4644s
1111

12-
Parallel GC work balance: 62.83% (serial 0%, perfect 100%)
12+
Parallel GC work balance: 87.94% (serial 0%, perfect 100%)
1313

14-
TASKS: 58 (1 bound, 57 peak workers (57 total), using -N10)
14+
TASKS: 63 (1 bound, 62 peak workers (62 total), using -N10)
1515

1616
SPARKS: 7516 (7516 converted, 0 overflowed, 0 dud, 0 GC'd, 0 fizzled)
1717

18-
INIT time 0.000s ( 0.003s elapsed)
19-
MUT time 307.420s ( 79.011s elapsed)
20-
GC time 341.586s (110.770s elapsed)
21-
EXIT time 0.110s ( 0.004s elapsed)
22-
Total time 649.117s (189.789s elapsed)
18+
INIT time 0.003s ( 0.156s elapsed)
19+
MUT time 340.588s ( 94.439s elapsed)
20+
GC time 143.185s ( 32.433s elapsed)
21+
EXIT time 0.108s ( 0.004s elapsed)
22+
Total time 483.883s (127.032s elapsed)
2323

24-
Alloc rate 2,489,613,396 bytes per MUT second
24+
Alloc rate 2,245,281,654 bytes per MUT second
2525

26-
Productivity 47.4% of total user, 41.6% of total elapsed
26+
Productivity 70.4% of total user, 74.3% of total elapsed
2727

profile.txt

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
1-
'purs' 'compile' '--source-globs-file' '.spago/sources.txt' +RTS '-N' '-sprofile.txt'
2-
1,516,071,924,704 bytes allocated in the heap
3-
574,866,053,056 bytes copied during GC
4-
3,401,220,216 bytes maximum residency (98 sample(s))
5-
49,707,176 bytes maximum slop
6-
9222 MiB total memory in use (0 MB lost due to fragmentation)
1+
'purs' 'compile' '--source-globs-file' '.spago/sources.txt' +RTS '-N' '-A256m' '-n16m' '-sprofile.txt'
2+
1,514,670,705,400 bytes allocated in the heap
3+
100,283,741,944 bytes copied during GC
4+
3,311,678,824 bytes maximum residency (14 sample(s))
5+
47,472,136 bytes maximum slop
6+
11326 MiB total memory in use (0 MB lost due to fragmentation)
77

88
Tot time (elapsed) Avg pause Max pause
9-
Gen 0 105895 colls, 105895 par 366.037s 140.943s 0.0013s 0.0198s
10-
Gen 1 98 colls, 97 par 222.211s 29.697s 0.3030s 0.4475s
9+
Gen 0 693 colls, 693 par 196.375s 42.165s 0.0608s 0.5568s
10+
Gen 1 14 colls, 13 par 37.234s 5.165s 0.3689s 0.5430s
1111

12-
Parallel GC work balance: 63.05% (serial 0%, perfect 100%)
12+
Parallel GC work balance: 84.01% (serial 0%, perfect 100%)
1313

14-
TASKS: 70 (1 bound, 66 peak workers (69 total), using -N10)
14+
TASKS: 68 (1 bound, 67 peak workers (67 total), using -N10)
1515

1616
SPARKS: 7516 (7516 converted, 0 overflowed, 0 dud, 0 GC'd, 0 fizzled)
1717

18-
INIT time 0.000s ( 0.004s elapsed)
19-
MUT time 631.223s (120.429s elapsed)
20-
GC time 588.249s (170.640s elapsed)
21-
EXIT time 0.050s ( 0.010s elapsed)
22-
Total time 1219.522s (291.083s elapsed)
18+
INIT time 0.003s ( 0.191s elapsed)
19+
MUT time 692.332s (136.117s elapsed)
20+
GC time 233.609s ( 47.330s elapsed)
21+
EXIT time 0.053s ( 0.009s elapsed)
22+
Total time 925.997s (183.648s elapsed)
2323

24-
Alloc rate 2,401,800,958 bytes per MUT second
24+
Alloc rate 2,187,780,137 bytes per MUT second
2525

26-
Productivity 51.8% of total user, 41.4% of total elapsed
26+
Productivity 74.8% of total user, 74.1% of total elapsed
2727

0 commit comments

Comments
 (0)