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

Hamlin Li mli at openjdk.java.net
Fri Mar 26 09:59:28 UTC 2021


On Fri, 26 Mar 2021 08:33:01 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:

>> Hamlin Li has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains seven commits:
>> 
>>  - Merge branch 'master' into g1-full-gc-optimization-00
>>  - reuse the "pin" mechanism (G1FullCollector._region_attr_table) to skip region compaction;
>>    deal with last-ditch full gc;
>>  - Merge branch 'master' into g1-full-gc-optimization-00
>>  - fix bot crash.
>>  - fix crash in G1CalculatePointersClosure::prepare_for_skipping_compaction when klass of dead objects is unloaded;
>>    other misc improvements.
>>  - reuse vm option MarkSweepDeadRatio; reuse G1RegionMarkStatsCache class; fix regression in Mark phase by inlining live words collection into mark_object()
>>  - JDK-8262068: Improve G1 Full GC by skipping compaction for regions with high survival ratio
>
> Looks pretty good actually.

I think it's better to agree on one thing first: 
1. Thomas suggests to use attribute table to store the pinned info for "high survival ratio regions"
2. Stefan suggests to add a new Region Type.
I'm OK with both ways, "new Region Type" way is a little bit redudant but it's more straight.
Would you mind to share comments on this point?

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

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



More information about the hotspot-gc-dev mailing list