Integrated: 8348595: GenShen: Fix generational free-memory no-progress check

Kelvin Nilsen kdnilsen at openjdk.org
Fri Feb 14 16:44:16 UTC 2025


On Fri, 24 Jan 2025 18:30:02 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

> At the end of a degenerated GC, we check whether sufficient progress has been made in replenishing the memory available to the mutator. The test for good progress is implemented as a ratio of free memory against the total heap size.
> 
> For generational Shenandoah, the ratio should be computed against the size of the young generation. Note that the size of the generational collection set is based on young generation size rather than total heap size.
> 
> This issue first identified in GenShen GC logs, where a large number of degenerated cycles were upgrading to full GC because the free-set progress was short of desired by 10-25%.

This pull request has now been integrated.

Changeset: ba6c9659
Author:    Kelvin Nilsen <kdnilsen at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/ba6c96599aac1a6c08cb66c611474f83bbc9b260
Stats:     27 lines in 5 files changed: 21 ins; 0 del; 6 mod

8348595: GenShen: Fix generational free-memory no-progress check

Reviewed-by: phh, xpeng

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

PR: https://git.openjdk.org/jdk/pull/23306


More information about the shenandoah-dev mailing list