mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-06 11:24:00 +00:00
Assert the soak's heap slope from switch 20 again
Measured over the second half the heap still grew about 20 KiB per switch in the acceptance run (117.8 to 123.8 MiB from switch 250 to 500), so the narrower window did not separate warm-up from growth; the original check stays.
This commit is contained in:
1 parent
a56f2f9352
commit
91685c94d9
1 file changed
+5
-14
@@ -17,11 +17,7 @@
|
||||
// With --assert (the long run), after the warm-up (switch 20): live WebGL
|
||||
// objects per engine context grow by at most 0.1 per switch (least-squares
|
||||
// slope over the checkpoints) and by at most 64 overall; no new WebGL
|
||||
// context; JS heap slope at most 10 KiB per switch over the second half of
|
||||
// the run (the first half is reported too: V8's compiled code and the
|
||||
// layers' caches grow for about 250 switches under this workload, then the
|
||||
// heap is flat, while a retained object per switch keeps growing); no new
|
||||
// document; the
|
||||
// context; JS heap slope at most 10 KiB per switch; no new document; the
|
||||
// webglcontextlost/restored listener counts on both engine canvases stay as
|
||||
// they were (each canvas keeps its webglcontextlost listener).
|
||||
//
|
||||
@@ -349,17 +345,12 @@ if (strictMode) {
|
||||
pass: last.webgl.length === first.webgl.length,
|
||||
});
|
||||
const heap = late.map((c) => [c.swap, c.heapMiB * 1024]);
|
||||
const steady = heap.filter(([swap]) => swap >= swaps / 2);
|
||||
assert.ok(steady.length >= 2, 'enough checkpoints in the second half');
|
||||
checks.push({
|
||||
check: 'JS heap KiB per switch, second half',
|
||||
slopePerSwap: Math.round(slope(steady) * 100) / 100,
|
||||
fromSwitch: steady[0][0],
|
||||
fromMiB: Math.round((steady[0][1] / 1024) * 100) / 100,
|
||||
check: 'JS heap KiB per switch',
|
||||
slopePerSwap: Math.round(slope(heap) * 100) / 100,
|
||||
fromMiB: first.heapMiB,
|
||||
toMiB: last.heapMiB,
|
||||
warmUpSlopePerSwap: Math.round(slope(heap) * 100) / 100,
|
||||
warmUpFromMiB: first.heapMiB,
|
||||
pass: slope(steady) <= 10,
|
||||
pass: slope(heap) <= 10,
|
||||
});
|
||||
checks.push({
|
||||
check: 'documents',
|
||||
|
||||
Reference in new issue
Block a user