JetBrains Technology Day for Java – OpenJDK: In The New Age of Concurrent Garbage Collectors

Posted on by Helen Scott

On the 10th July 2020, JetBrains hosted a Technology Day for Java. We had 10 presentations and the videos for them are available here. Over the coming weeks, in no particular order, we’d like to share with you extra resources that our speakers kindly provided and any links to further reading or code samples.

We hosted Monica Beckwith talking to us about garbage collection in OpenJDK Hotspot. Java has always been very good at taking out the trash with garbage collection functionality integrated from the beginning, however, it has evolved! Monica took us through the various garbage collection algorithms as well as the design goals for each, before providing comparisons between them.

We learned the difference between the Stop The World Garbage Collection (STW) and Concurrent garbage collection approaches in Java and the different ways that garbage collectors slice up the heap, move objects around, and what the priorities can be when it comes to reclaiming space.

Monica compared the G1 GC collector, Shenandoah GC and Z GC with respect to the following criteria:

  • Regionalised (with regards to the heap)
  • Generational (with regards to the heap)
  • Compaction (Stop the World versus Concurrent)
  • Target pause times
  • Concurrent marking algorithm

This side by side comparison was very useful to help us understand the bigger picture and differences at a higher level between the garbage collectors that are available to us. Monica then took us through a technical deep-dive on the various criteria for each garbage collector as well as some examples.

Further resources

What our audience thought of Monica’s presentation

Subscribe

Subscribe for updates