RFR: 8254167 G1: Record regions where evacuation failed to provide targeted iteration
Hamlin Li
mli at openjdk.java.net
Fri Aug 27 04:25:26 UTC 2021
On Fri, 27 Aug 2021 04:09:52 GMT, Hamlin Li <mli at openjdk.org> wrote:
> This is a 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
> - 2) bitmap (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.
Seem the test failure is not related to this patch, as my local test success, and it shows that there is no Evacuation Failure triggered during the test.
-------------
PR: https://git.openjdk.java.net/jdk/pull/5272
More information about the hotspot-gc-dev
mailing list