RFR: Initial sizing refactor

William Kemper wkemper at openjdk.org
Mon Dec 19 23:33:18 UTC 2022


Some things to highlight here:
* This change borrows a bit of code from G1 to handle processing of command line arguments used to size the young generation.
* A (hard coded for now) threshold on the difference between young/old time has been added to reduce resizing churn.
* The adaptive heuristic doesn't consider the `soft_tail` anymore. `available` is already adjusted for the soft max capacity.
* `SoftMaxHeapSize` is used to compute the soft max size and max size for the young generation.

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

Commit messages:
 - Initial young generation to maximum allowed size
 - Always transfer bytes in multiple of region size
 - Fix invalid assertion
 - Initial soft max size based on young generation's minimum size.
 - Factor out methods to check young generation size limits
 - WIP: Refactor handling of generation parameters

Changes: https://git.openjdk.org/shenandoah/pull/185/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=185&range=00
  Stats: 362 lines in 12 files changed: 233 ins; 68 del; 61 mod
  Patch: https://git.openjdk.org/shenandoah/pull/185.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah pull/185/head:pull/185

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


More information about the shenandoah-dev mailing list