RFR: Remove CSetThreshold handling from heuristics

Aleksey Shipilev shade at redhat.com
Wed Apr 4 17:57:34 UTC 2018


http://cr.openjdk.java.net/~shade/shenandoah/purge-cset-threshold/webrev.01

We did this thing before separate UR phase was introduced. The role for this threshold was to avoid
double-cycle when heuristics thinks the free space hoarded in cset is not available. However, it is
not fully reliable: the fact that we "appear" to have more free space than we actually have risks to
run into alloc-failure during late mark. Also, since separate UR phase is enabled, we don't even
care about double-cycle issue anymore: CM-with-UR cycles _are_ back-to-back.

Removing this simplifies the code.

Testing: hotspot_gc_shenandoah, SPECjbb (where the original double-cycle was observed)

Thanks,
-Aleksey


More information about the shenandoah-dev mailing list