RFR: 8264026: Remove dependency between free collection set and eagerly reclaim humongous object tasks
Stefan Johansson
sjohanss at openjdk.java.net
Wed Mar 24 10:17:39 UTC 2021
On Wed, 24 Mar 2021 08:41:37 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
>> src/hotspot/share/gc/g1/g1CollectedHeap.cpp line 4488:
>>
>>> 4486: void G1CollectedHeap::rebuild_free_region_list() {
>>> 4487: Ticks start = Ticks::now();
>>> 4488: _hrm.rebuild_free_list(workers());
>>
>> The first thing done in`rebuild_free_list()` is to drop the current free_list to rebuild if from scratch. So we should now be able to remove the call `prepend_to_freelist(&local_cleanup_list)` in `eagerly_reclaim_humongous_regions()`. Doing so the `local_cleanup_list` is only used for printing, and we should probably investigate if this can be done differently.
>
> There is [JDK-8264027](https://bugs.openjdk.java.net/browse/JDK-8264027) filed for this. For now I was planning to keep this gathering of regions into the list but just factor out the printing code (as it's copy&pasted a bit), but we can certainly talk about more invasive measures.
>
> The only way I see for now is that instead of gathering the elements in the list and printing in one go is printing immediately if we keep this functionality...
>
> Thanks for your review.
I agree, I think printing as we go sounds reasonable.
-------------
PR: https://git.openjdk.java.net/jdk/pull/3154
More information about the hotspot-gc-dev
mailing list