RFR: 8277736: G1: Allow forced evacuation failure of first N regions in collection set

Albert Mingkun Yang ayang at openjdk.java.net
Tue Nov 30 10:02:04 UTC 2021


On Thu, 25 Nov 2021 12:54:11 GMT, Hamlin Li <mli at openjdk.org> wrote:

> Currently, debug options of evacuation failure, like G1EvacuationFailureALotInterval and G1EvacuationFailureALotCount only config the ratio of objects failing evacuation, basically the distribution of objects failing evacuation is even among regions.
> 
> JDK-8256265 is trying to improve parallelism in regions that failed evacuation, it'll be helpful if there is option to config the distribution of objects failing evacuation among regions, so implementation of JDK-8256265 could be profiled more precisely.
> 
> This is to add the support and necessary vm options, and the implementation will be to select regions from start, i.e. not randomly, the motivation is to configure a more stable selection of evacuation failure regions, which will help verify the effect of JDK-8256265 implementation.

Just some minor comments/suggestions.

src/hotspot/share/gc/g1/g1YoungGCEvacFailureInjector.hpp line 61:

> 59: 
> 60:   // Records the regions that will fail evacuation.
> 61:   CHeapBitMap _regions;

How about calling this field `_evac_fail_regions`?

src/hotspot/share/gc/g1/g1_globals.hpp line 78:

> 76:           "evacuation pauses")                                              \
> 77:                                                                             \
> 78:   product(uintx, G1EvacuationFailureALotCSetPercent, 100,                   \

Why `uintx`? Does `uint` work?

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

Marked as reviewed by ayang (Reviewer).

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



More information about the hotspot-gc-dev mailing list