RFR: Use PLABs for old gen allocations, including promotions.

Bernd Mathiske bmathiske at openjdk.java.net
Tue Apr 13 21:10:53 UTC 2021


On Mon, 12 Apr 2021 21:07:17 GMT, Bernd Mathiske <bmathiske at openjdk.org> wrote:

>> src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp line 102:
>> 
>>> 100:       do_commit();
>>> 101:     case _empty_committed:
>>> 102:       set_affiliation(YOUNG_GENERATION);
>> 
>> It's not clear to me why we would set the affiliation here. Do we know this region isn't going to be used for evacuations in old gen?
>
> This is to fix full single-generational collections. But yes, not good enough in the long run. => I need to put a TODO note to remind us of later repairing proper full collections in generational mode.

There are two places like this one. This one here is actually a bug that affects regular concurrent collections and I am fixing it in the next commit that I just filed for this PR. 

The other place in the vicinity, in make_regular_bypass(), needs a TODO and I just added it. The text for it is taken from a similar place that needs to be fixed in a very similar way.

-------------

PR: https://git.openjdk.java.net/shenandoah/pull/30


More information about the shenandoah-dev mailing list