~/talk

Three flavors of generational GC: G1, ZGC, Shenandoah

Talkat Jfokus 2026 · 2026-02-02..02-04· [java]
links:none on file
slides:none on file

All three collectors adopt a generational design in generational ZGC in Java 25 and behavior differs sharply: Capo benchmarks show ZGC has the lowest pause times, Shenandoah sits in the middle with concurrent compaction via Brooks pointers, and G1 produces the highest pauses but wins throughput on four of the measured workloads (LU index ties with ZGC). Production experience with 5 TB heaps highlights fragmentation needs and the value of the Shenandoah visualizer. Note: ZGC lacks a full serviceability agent; two tickets remain open.

AI-written summary · about

  1. 0:00Generational GC overview
  2. 3:08Why generational GC matters
  3. 4:34Heap layout differences
  4. 6:23Stop-the-world vs concurrent trade-offs
  5. 7:52Heap region visualization
  6. 8:57Benchmarking results
  7. 10:49ZGC and Shenandoah pauses
  8. 12:14Performance comparison
  9. 13:41Serviceability considerations
  10. 14:05Choosing the right GC
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.