luagc: per-step timing, forced GC honoring, weirdperformance compat

- Per-step rdtsc timing: ZGCStats returns max_step_us and atomic_us
- AllocBench /zgcstats frame shows step/atomic timing with color coding
- /gccompare command for timing forced GC cycles
- Honor lua_setgcthreshold forced collections (collectgarbage() with low
  threshold now triggers GC instead of being silently ignored)
- Disable luaalloc in weirdperformance when luagc is active (no conflict)
- Closures go to grayagain (covers all upvalue mutation paths)
This commit is contained in:
MarcelineVQ
2026-04-11 10:29:39 -07:00
parent ce5a2408d5
commit 8d3460cf1e
7 changed files with 1038 additions and 15 deletions
+3 -5
View File
@@ -326,11 +326,9 @@ pub fn installHooks() void {
// libdeflate inflate replacement
if (inflate_hook.install()) installed += 1;
// Lua slab allocator replacement
installed += luaalloc.install();
// GC phase profiler
installed += luagc.install();
// Lua slab allocator + GC: owned by luagc module.
// installed += luaalloc.install();
// installed += luagc.install();
}
pub fn lateInit() void {