RFR: 8140326: G1: Consider putting regions where evacuation failed into next collection set [v10]
Thomas Schatzl
tschatzl at openjdk.org
Thu Aug 3 15:53:34 UTC 2023
On Thu, 3 Aug 2023 10:44:15 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:
>> Thomas Schatzl has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Update retained region's top/stats at the end only; move pre_concurrent_start to before determining collection set to simplify condition what regions to set tams for
>
> src/hotspot/share/gc/g1/g1HeapVerifier.cpp line 506:
>
>> 504: // To compare liveness recorded in G1ConcurrentMark and actual we need to flush the
>> 505: // cache.
>> 506: G1CollectedHeap::heap()->concurrent_mark()->flush_all_task_caches();
>
> It can be surprising for verification to update global vars (visible side effect). Does it make sense to verify marking related stats when marking is complete?
This verification checks consistency after the concurrent start pause. It has been very important during development of this change to verify expected with actual liveness to make sure that the state after that GC is correct/consistent.
I would like to keep this as is.
Now one could also verify after marking is complete (if we do not do already), but the earlier issues are caught, the better to me.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14220#discussion_r1283401057
More information about the hotspot-gc-dev
mailing list