RFR: 8312117: GenShen: Preempt OLD marking more quickly when YOUNG triggers arise [v2]

William Kemper wkemper at openjdk.org
Mon Oct 2 19:14:44 UTC 2023


On Mon, 2 Oct 2023 18:33:12 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:

>> src/hotspot/share/gc/shenandoah/shenandoahRegulatorThread.cpp line 150:
>> 
>>> 148: 
>>> 149: bool ShenandoahRegulatorThread::start_old_cycle() {
>>> 150:   // TODO: These first two checks might be vestigial
>> 
>> It would seem that not starting a fresh old marking cycle while we have copying work left to do from a previous one does however seem to be reasonable.
>> 
>> Why do you believe this is vestigial? Have we already checked these conditions elsewhere recently? (I realize we can't assert those two conditions since the state may have changed concurrently because of concurrent collection activity.)
>
> Also wondered if the presence of only pinned old regions at this check might confound the second conjunct in the check?

These conditions are "re-checked" in `ShenandoahOldHeuristic::should_start_gc`, though with a different API.

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

PR Review Comment: https://git.openjdk.org/shenandoah/pull/333#discussion_r1343057028


More information about the shenandoah-dev mailing list