RFR: 8365956: GenShen: Adaptive tenuring threshold algorithm may raise threshold prematurely [v5]

Kelvin Nilsen kdnilsen at openjdk.org
Tue Sep 9 22:34:33 UTC 2025


On Tue, 9 Sep 2025 22:09:02 GMT, William Kemper <wkemper at openjdk.org> wrote:

>> The adaptive tenuring algorithm has been modified to begin its evaluation of mortality rates from the current tenuring threshold. To compliment this change, objects must also now be strictly above the tenuring threshold to be promoted (instead of greater-than-or-equal).
>
> William Kemper has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 20 additional commits since the last revision:
> 
>  - Fix include order
>  - Add missing newline
>  - Fix typo
>  - Merge tag 'jdk-26+14' into adaptive-tenuring-threshold
>    
>    Added tag jdk-26+14 for changeset ab9f70dd
>  - Do not require objects to be strictly older than the tenuring threshold
>  - Log updated tenuring age at info, log age table at debug
>  - Be consistent when comparing tenuring threshold with ages
>  - Fix windows build
>  - Fix release build
>  - Revert unintended change
>  - ... and 10 more: https://git.openjdk.org/jdk/compare/2b231502...0ffa89c5

Thanks for chasing down the performance regression.  Looks good.

src/hotspot/share/gc/shenandoah/shenandoahAgeCensus.hpp line 186:

> 184: 
> 185:   // Return true if this age is at or above the tenuring threshold.
> 186:   bool is_tenurable(uint age) const {

might want to mark this as inline.  (if in-lined, this might be the right way to check whether individual objects should be promoted.  But I don't want to delay integration of this PR, so maybe that could be done in a different PR if we think it worthwhile.)

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

Marked as reviewed by kdnilsen (Committer).

PR Review: https://git.openjdk.org/jdk/pull/26906#pullrequestreview-3203541920
PR Review Comment: https://git.openjdk.org/jdk/pull/26906#discussion_r2334950649


More information about the hotspot-gc-dev mailing list