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

Thomas Schatzl tschatzl at openjdk.org
Tue Sep 13 09:46:52 UTC 2022


On Mon, 12 Sep 2022 11:40:10 GMT, Albert Mingkun Yang <ayang 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/g1YoungGCPostEvacuateTasks.cpp line 373:
> 
>> 371:     bool do_heap_region(HeapRegion* r) override {
>> 372:       G1CollectedHeap::heap()->clear_bitmap_for_region(r, false /* update_tams */);
>> 373:       return false;
> 
> I wonder if it's possible to assert `tams == bottom` here.

No, after some thinking. G1 clears TAMSes during concurrent clearing of the bitmap. This marking phase is already concurrent to the mixed phase. We could reset TAMS anyway though.

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

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


More information about the hotspot-dev mailing list