RFR: 8254167 G1: Record regions where evacuation failed to provide targeted iteration [v9]

Albert Mingkun Yang ayang at openjdk.java.net
Wed Sep 8 07:20:12 UTC 2021


On Tue, 7 Sep 2021 04:27:01 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> This is another try to optimize evcuation failure for regions.
>> I record evacuation failed regions, and iterate these regions directly rather than iterate the whole cset.
>> The implementation reuses and refactors some of the existing data in g1CollectedHeap (_regions_failed_evacuation, _num_regions_failed_evacuation), and records these regions in an array, and iterate this array later in post evacuation phase.
>> 
>> I have 2 implementations:
>> 
>> - 1) CHT (Initial version)
>> - 2) bitmap (latest version, reuse _regions_failed_evacuation in g1CollectedHeap)
>> 
>> This implementation does not consider work distribution as mentioned in JDK-8254167 yet. But seems it already get better&stable performance gain than origin. We could improve it further later if work distribution is necessary.
>> 
>> I will attach the perf data in JBS.
>
> Hamlin Li has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix merging issues

Marked as reviewed by ayang (Reviewer).

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

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



More information about the hotspot-gc-dev mailing list