RFR: 8256265: G1: Improve parallelism in regions that failed evacuation [v2]
Stefan Johansson
sjohanss at openjdk.org
Tue Sep 13 11:28:55 UTC 2022
On Tue, 13 Sep 2022 10:57:37 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
>> src/hotspot/share/gc/g1/g1YoungGCPostEvacuateTasks.cpp line 112:
>>
>>> 110: double worker_cost() const override {
>>> 111: assert(_evac_failure_regions->evacuation_failed(), "Should not call this if not executed");
>>> 112: return _evac_failure_regions->num_regions_failed_evacuation() * G1PerRetainedRegionThreads;
>>
>> It feels a bit wrong to have a flag for this, or at least I'm not sure if the number of thread only should be connected to the number of regions only. Instead maybe we should look at the to total size for those regions. Now with the chunking there will be a lot more work items than regions so we should be able to look at size which to me looks like a better metric.
>
> Something like `G1CollectedHeap::get_chunks_per_region() / MAGIC_FACTOR` I guess?
Yes, that would be better and times the number of regions.
-------------
PR: https://git.openjdk.org/jdk/pull/9980
More information about the hotspot-dev
mailing list