RFR: 8319342: GenShen: Reset the count of degenerated cycles in a row following Full GC

William Kemper wkemper at openjdk.org
Mon Nov 6 23:11:51 UTC 2023


On Fri, 3 Nov 2023 21:17:42 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

> After a Full GC completes, reset the count on consecutive degenerated cycles to zero.  This prevents automatic triggering of back-to-back Full GC.

Changes requested by wkemper (Committer).

src/hotspot/share/gc/shenandoah/heuristics/shenandoahPassiveHeuristics.cpp line 49:

> 47: bool ShenandoahPassiveHeuristics::should_degenerate_cycle() {
> 48:   // Always fail to Degenerated GC, if enabled
> 49:   return ShenandoahDegeneratedGC;

Are we changing how the passive heuristic behaves now? With this change `ShenandoahCollectorPolicy::should_degenerate_cycle` would return `false` sometimes when the passive heuristic would have "degenerated".

src/hotspot/share/gc/shenandoah/shenandoahCollectorPolicy.hpp line 64:

> 62:   ShenandoahTracer* _tracer;
> 63: 
> 64:   uint _degenerated_cycles_in_a_row;

Nit, but we could call this `_consecutive_degenerated_gcs` for consistency with other fields in this class? (Also, possibly rename `_abbreviated_cycles` to `_abbreviated_gcs` for the same reason.

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

PR Review: https://git.openjdk.org/shenandoah/pull/352#pullrequestreview-1716475112
PR Review Comment: https://git.openjdk.org/shenandoah/pull/352#discussion_r1384151138
PR Review Comment: https://git.openjdk.org/shenandoah/pull/352#discussion_r1384144872


More information about the shenandoah-dev mailing list