RFR: Allow young collection to suspend marking in old generation [v5]

Zhengyu Gu zgu at openjdk.java.net
Thu Feb 25 00:25:53 UTC 2021


On Wed, 24 Feb 2021 23:44:59 GMT, earthling-amzn <github.com+71722661+earthling-amzn at openjdk.org> wrote:

>> src/hotspot/share/gc/shenandoah/shenandoahGeneration.cpp line 242:
>> 
>>> 240:   ShenandoahRegionIterator regions;
>>> 241:   ShenandoahScanRememberedTask task(task_queues(), old_gen_task_queues(), rp, &regions);
>>> 242:   heap->safepoint_workers()->run_task(&task);
>> 
>> Out of curiosity, any reason to use safepoint_workers instead of regular workers? Thanks.
>
> I figured `ParallelGCThreads` would be greater than `ConcGCThreads`, looking closer I see that the regular workers get `_max_workers`. I could put a `ShenandoahWorkerScope` here and have it get the number of workers from `ShenandoahWorkerPolicy`?. We plan to move this code off the safepoint anyway.

Yep. In this case, should just use regular workers, then.

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

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


More information about the shenandoah-dev mailing list