blob: 0ae8c3d7f2d45815ad645e99dd297dccebee1e97 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
discard """
output: '''occupied ok: true
total ok: true'''
disabled: "true"
"""
import strutils, data
proc main =
var m = 0
# Since the GC test is slower than the alloc test, we only iterate 100_000 times here:
for i in 0..100_000:
let size = sizes[i mod sizes.len]
let p = newString(size)
# c_fprintf(stdout, "iteration: %ld size: %ld\n", i, size)
main()
let occ = getOccupiedMem()
let total = getTotalMem()
# Concrete values on Win64: 58.152MiB / 188.285MiB
let occupiedOk = occ < 82 * 1024 * 1024
if not occupiedOk:
echo "occupied ", formatSize(occ)
echo "occupied ok: ", occupiedOk
let totalOk = total < 230 * 1024 * 1024
if not totalOk:
echo "total peak memory ", formatSize(total)
echo "total ok: ", totalOk
|