pre-tenuring in v8
Explains how V8's JavaScript engine uses pre-tenuring to allocate long-lived objects directly in old space, avoiding nursery overhead.
Andy Wingo is a systems programmer and researcher focused on garbage collection, virtual machines, WebAssembly, and language runtimes like V8 and Guile. His blog documents deep experiments in memory management, performance, and VM design.
10 articles from this blog
Explains how V8's JavaScript engine uses pre-tenuring to allocate long-lived objects directly in old space, avoiding nursery overhead.
A developer reflects on the political roots of free software, questioning its current purpose after achieving mainstream adoption.
An analysis of recent developments in the V8 JavaScript engine's garbage collector, focusing on memory safety, Oilpan, and multi-threading support.
Introducing wastrel, a new WebAssembly compiler that converts Wasm to C and then to native binaries, with goals for WasmGC support and WASI compatibility.
A developer explores adding freelists to a 'no-freelist' garbage collector to reduce fragmentation, analyzing performance trade-offs and heap growth heuristics.
An update on integrating a moving garbage collector into Guile Scheme, detailing technical challenges, refactors, and bug fixes.
A developer's technical log on improving Guile's garbage collector using the Whippet API, focusing on fragmentation and evacuation strategies.
A technical note on integrating the Whippet GC with Guile, focusing on heap sizing heuristics and fragmentation challenges.
Developer details integrating the Whippet garbage collector into Guile Scheme, replacing the older BDW-GC for improved performance and maintainability.
A developer's journey into garbage collection, detailing the creation of the Whippet GC and exploring Immix mark-region algorithms.