Iso: Request-Private Garbage Collection
summary
Claim: a practical request-private GC for Java that uses opportunistic copying on an Immix-style mark-region heap to avoid global pauses. Implemented in OpenJDK and evaluated on Tomcat/Spring: dynamic visibility tracking costs ~2%, and Iso cuts execution time by 32% and 22% versus OpenJDK G1 on suitable request-parallel workloads. Built supports per-thread evacuation without language immutability and falls back to global marking when needed; results show clear wins for quasi-independent requests.
AI-written summary · about
chapters (13)
- 0:00ISO introduction
- 0:23ISO capabilities
- 1:04Motivation for ISO
- 2:30Thread-local GC for Java
- 3:11Thread-local GC history
- 4:56DLG invariant in ISO
- 7:03Java GC limitations
- 8:31Opportunistic copying insight
- 9:13ISO heap structure
- 10:18Experimental setup
- 11:24ISO benchmark results
- 12:09ISO applicability summary
- 12:57Q&A
related talks
01h 01mOpenJDK: In the new age of Concurrent Garbage Collectors
31mDemystifying Garbage Collection in Java
46mZGC: A Scalable Low-Latency Garbage Collector
39mZGC: The Next Generation Low-Latency Garbage Collector
25mGarbage Collection Primer
33mNo GC coding techniques for low latency Java
01h 32mUnderstanding Java Garbage Collection and what you can do about it
52mUnderstanding Java Garbage Collection
