Strawman for mixed partial collections

Christine Flood cflood at redhat.com
Fri Oct 13 16:26:56 UTC 2017


1) Switch to Minimal Wavefront Concurrent Marking.

2) Partial phases:
   Init partial
      Stop concurrent marking threads.
      Treat conc marking threads as roots.
      All the current init partial stuff (scanning roots, evac_in_progress
flags...).

   Evac partial

   Final partial
      Copy from-region bitmap results to to-region bitmaps.
      Clear from-region bitmaps
      Update marking queues to point to to-region copies.
      Restart concurrent marking threads

I'm a little worried that updating the marking queues may take too much
time, if so we can move it to a concurrent phase as long as we don't
restart concurrent marking until it is completed.


More information about the shenandoah-dev mailing list