Closed namenu closed 3 years ago
Benchmark ScreenShot
According to Safari Web Inspector, every getArrayUnsafe calls cause minor GC. (also in Firefox 84, not in Chrome 87)
getArrayUnsafe
Culprit: inner function with closure
function getArrayUnsafe(vec, idx) { if (idx >= tailOffset(vec)) { return vec.tail; } var traverse = function (_node, _level) { while(true) { var level = _level; var node = _node; if (level === 0) { return node; } var subIdx = (idx >>> level) & bitMask; _level = level - 5 | 0; _node = getNode(node, subIdx); continue ; }; }; var ar = traverse(vec.root, vec.shift); if (ar.TAG !== /* Node */0) { return ar._0; } throw { RE_EXN_ID: "Assert_failure", _1: [ "Re_Vector.res", 138, 17 ], Error: new Error() }; }
Solution:
Benchmark ScreenShot
According to Safari Web Inspector, every
getArrayUnsafe
calls cause minor GC. (also in Firefox 84, not in Chrome 87)Culprit: inner function with closure
Solution: