RFR: Decouple generational heuristics
Kelvin Nilsen
kdnilsen at openjdk.java.net
Tue Oct 5 00:01:36 UTC 2021
On Wed, 29 Sep 2021 19:19:17 GMT, William Kemper <wkemper at openjdk.org> wrote:
> ### Summary
> This commit is part of an effort to improve the performance of the old generation heuristic.
>
> * added `ShenandoahOldGCHeuristics` - choose the heuristic for old generation (adaptive is default, aggressive is not allowed, only used to trigger old marking, has no influence on cset selection for old generation).
> * added `ShenandoahOldGarbageThreshold` - The minimum percentage of garbage in old region to be included in old cset.
> * added `ShenandoahOldEvacReserve` - Percentage of old generation to withhold from old evacuation.
> * added `ShenandoahGuaranteedOldGCInterval` - Minimum time between old generation collection (default is 10 min).
> * refactored old generation heuristic class hierarchy to reduce code duplication
> * added more detail to log messages and formatted byte sizes for easier human readability
>
> ### Testing
> Passes tier3 shenandoah jtreg tests and Dacapo and Heapothesys on x86 and aarch64.
Thanks for this cleanup. Big improvement. Am eager to test this out.
-------------
Marked as reviewed by kdnilsen (Committer).
PR: https://git.openjdk.java.net/shenandoah/pull/76
More information about the shenandoah-dev
mailing list