Intro
Reviewing here about Concurrent GC’s and GC’s strategy, I saw about Shenandoah GC quite interesting topic. The phases are basically related to marking the regions.
Shenandoah GC
Basically, Shenandoah is about regional collection – if this sentence makes sense. It has 9 phases but also 5 heuristics. The paper can be accessed here
Usage flag: XX:+UseShenandoahGC
The phases are enumerated below:
Initial Mark
Concurrent Marking
Final Mark
Concurrent Cleanup
Concurrent Evacuation
Init Update Refs
Concurrent Update References
Final Update Refs
Concurrent Cleanup
The heuristics can be used as:
-XX:ShenandoahGCHeuristics=<name>
And tells the GC how to actually start the mechanism. They are: adaptative, static, compact, passive and aggressive.
Youtube Video from Christine Flood
Reddit thread
Shenandoah Visualizer
It is possible to use the Shenandoah visualizer tool to understand more about it.
REFs
inline