Java’s G1 Garbage Collector

The G1 Garbage Collector, Java’s default garbage collector, is a fascinating piece of technology with a long history. In this episode of Stack Walker we take a deep dive of the G1 garbage collector to understand it’s key architectural features that allow it to meet its performance goals. We will also take a look at how to use G1, and a brief look into G1’s future. -- Chapters -- 0:00 Intro 1:42 G1’s History 3:15 Limitations of Existing GCs 4:12 G1’s Design 4:34 Generational 5:54 Incremental 8:06 remembered Sets 9:45 Write Barriers 11:54 Parallel & Concurrent 17:51 Stop the World & Evacuating 21:16 Using G1 22:25 Tuning G1 23:54 Future of G1 25:03 Conclusions -- Resources -- Thomas Schatzl’s Blog ➱ Concurrent Marking in G1 ➱ HotSpot VM Tuning Guide ➱ Throughput Barrier Exploration for the Garbage-First Collector ➱ Garbage-First White Paper ➱ ~dbarowy/cs334s18/assets/ JEP 423 ➱ ➱ ➱ Tags: #Java #GC #Performance #OpenJDK #JDK #JVM #InsideJava
Back to Top