You're probably familiar with the well-known Garbage Collection policies such as CMS, G1, Shenandoah, ZGC, gencon, balanced, etc. Many GC optimizations can go unnoticed if not paid close attention.
This talk is meant to demystify some of these optimizations that even though might be transparent to a JVM user, makes a tremendous performance impact. We'll start the talk by going over two well-known OpenJ9 GC policies, balanced and CS gencon as a preparation for the main part of the talk. Once we have the necessary background we’ll dive into Dynamic breadth-first scan ordering which is a scan ordering algorithm that takes into consideration the hotness of a field. The second optimization we'll share is double mapping of arraylets which is a way to improve memory management of large arrays in region-based GCs. Finally, we'll share be sharing Off-heap technology for region-based Collectors which is a way to optimize large object allocation for region-based GCs.
By the end of the talk, you will have a better understanding of how these technologies work and how they can be beneficial to a Java application. The talk is a target for an audience with previous Garbage Collection knowledge.