RFR: 8311883: [Genshen] Adaptive tenuring threshold [v4]

Y. Srinivas Ramakrishna ysr at openjdk.org
Tue Jul 25 16:37:03 UTC 2023


> JDK-8311883 [GenShen] Adaptive tenuring
> 
> I am opening this previously draft PR for formal preliminary review. It has already benefited from review feedback from a code walkthrough of an earlier version of the code. Most of that feedback and the corrections thereof are to be found in the comments in this PR. I have addressed a large majority of those comments, and am working on the last one that I plan to address as part of this PR. For the ones that I don't plan to address in this PR, I will create follow up tickets. Those will be added in the responses for the remaining feedback comments recorded in this PR's conversation.
> 
> Preliminary testing w/SPECjbb didn't yield reliable performance data from which to infer any performance improvements stemming from enabling adaptive tenuring. I believe that was because of the way SPECjbb is run, which causes excessive degenerate and full gc's. I plan to collect SPECjbb numbers with a fixed lower max HBIR so as to be able to discern performance differences from this change, as well as Extremem workloads. Those will be added here once ready over the next few days.

Y. Srinivas Ramakrishna has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 75 commits:

 - Merge branch 'master' into adaptive_tenuring
 - Separate out clearing and testing of local and global portions of census
   data, towards expunging partial/interrupted census data as a next step.
 - Merge branch 'master' into adaptive_tenuring
 - Changes from @earthling-amzn review.
 - jcheck clean: whitespace
 - Fix an assert because of youngg region iteration infelicity (and attendant
   inefficiency which can be fixed later). Some attendant changes
   to ShenandoahAgeCensus interfaces.
 - Deal with population of age 0 cohort that isn't subject to
   marking and therefore would be missed in census during mark.
 - Merge branch 'master' into adaptive_tenuring
 - Merge branch 'master' into adaptive_tenuring
 - Don't record age table info at evacuation when we do census at mark.
   Strengthen some related assertions.
 - ... and 65 more: https://git.openjdk.org/shenandoah/compare/6ca2eeaa...a8dbbd66

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

Changes: https://git.openjdk.org/shenandoah/pull/289/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=289&range=03
  Stats: 972 lines in 30 files changed: 854 ins; 45 del; 73 mod
  Patch: https://git.openjdk.org/shenandoah/pull/289.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/289/head:pull/289

PR: https://git.openjdk.org/shenandoah/pull/289


More information about the shenandoah-dev mailing list