RFR: 8256265: G1: Improve parallelism in regions that failed evacuation [v2]

Thomas Schatzl tschatzl at openjdk.org
Tue Sep 13 10:47:50 UTC 2022


On Tue, 13 Sep 2022 09:46:20 GMT, Stefan Johansson <sjohanss at openjdk.org> wrote:

>> Thomas Schatzl has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:
>> 
>>  - Merge branch 'master' of gh:tschatzl/jdk into 8256265-parallel-evac-failure
>>  - disable G1EvacuationFailureALot by default again
>>  - Remove unneeded clear metadata phase
>>  - Remove debug code
>>  - More refactoring
>>  - Initial cleanup
>>  - some refactoring, fix clearing of opt index in cset
>>  - fix test
>>  - some cleanup
>>  - Cleanup, phase names, fixes
>>  - ... and 2 more: https://git.openjdk.org/jdk/compare/37df5f56...2628451d
>
> src/hotspot/share/gc/g1/g1EvacFailure.cpp line 108:
> 
>> 106: 
>> 107: // Caches the currently accumulated number of garbage words found in this heap region.
>> 108: // Avoids direct (frequent) atomic operations on the HeapRegion's garbage counter.
> 
> Just to be sure we need this, we have seen problems calling `note_self_forwarding_removal_end_par(...)` on return from `process_chunk(...)`?

I think that's it. We expect few failed regions (1-2) with pinned regions, so many threads working on the same region at the same time. If you want we can drop the cache, I did not (re-)measure.

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

PR: https://git.openjdk.org/jdk/pull/9980


More information about the hotspot-dev mailing list