RFR: JDK-8216973: Shenandoah: Kick up cleanup phases in the right places
shade at redhat.com
Mon Jan 14 11:40:30 UTC 2019
On 1/14/19 12:25 PM, Roman Kennke wrote:
> In Shenandoah, we currently start cleanup phase when we dive into
> concurrent evacuation (and only then), and after the cycle
> (unconditionally). However, we only create trashed regions in final-mark
> (immediate garbage and/or garbage from previous cycle), and might skip
> evacuation altogether, and may not actually create trash at end of cycle
> if we merge update-refs onto subsequent concurrent-mark. Let's start
> cleanups where we actually need them: once unconditionally before
> conc-evac and once after final-update-refs.
The intent for the patch is okay.
I think comments need to be updated, for example:
// Final mark might have reclaimed some immediate garbage, kick cleanup to reclaim
// the space. This would be the last action if there is nothing to evacuate.
// Update references freed up collection set, kick the cleanup to reclaim the space.
> Also, should this go into JDK12?
I think this is the minor performance enhancement, and as such it should be deferred until first
12u. So, let's push this to jdk/jdk, let it be tested, and then we'll do the backport to
jdk-updates/jdk12u, when that arrives.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 833 bytes
Desc: OpenPGP digital signature
More information about the hotspot-gc-dev