RFR: JDK-8216973: Shenandoah: Kick up cleanup phases in the right places
Aleksey Shipilev
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.
> http://cr.openjdk.java.net/~rkennke/JDK-8216973/webrev.00/
I think comments need to be updated, for example:
After final-mark:
// 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.
heap->entry_cleanup();
After update-refs:
// Update references freed up collection set, kick the cleanup to reclaim the space.
heap->entry_cleanup();
> 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.
Thanks,
-Aleksey
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20190114/f63c713e/signature.asc>
More information about the hotspot-gc-dev
mailing list