RFR: JDK-8262068: Improve G1 Full GC by skipping compaction for regions with high survival ratio [v8]

Hamlin Li mli at openjdk.java.net
Thu Mar 18 03:06:49 UTC 2021


On Thu, 11 Mar 2021 15:03:56 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:

>> Hamlin Li has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   fix bot crash.
>
> src/hotspot/share/gc/g1/g1FullGCMarker.cpp line 50:
> 
>> 48:     // cache size is big enough that not increase pause during marking
>> 49:     // by avoiding hit misses as so as possible
>> 50:     _mark_region_cache(mark_stats, round_up_power_of_2(G1CollectedHeap::heap()->max_regions())) {
> 
> The suggested cache size is way too huge for large heaps (10k's of regions) for no gain. Unless you have good numbers, please use the same size as for the concurrent mark stats cache (fixed 1024).
> Feel free to move `G1CMTask::RegionMarkStatsCacheSize` to `G1RegionMarkStatsCache` and make it a public static constant there.

already done in pr #2966

> src/hotspot/share/gc/g1/g1FullGCMarker.hpp line 66:
> 
>> 64:   CLDToOopClosure      _cld_closure;
>> 65: 
>> 66:   G1RegionMarkStatsCache _mark_region_cache;
> 
> Could you call this instance `_mark_stats_cache` too like in the other use, and adapt the various method names? `_mark_region_cache` does not indicate that this has something to do with (liveness) "statistics" cache. I do not know what a "region cache" is.

already done in pr #2966

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

PR: https://git.openjdk.java.net/jdk/pull/2760



More information about the hotspot-gc-dev mailing list