RFR: Enforce max regions

Kelvin Nilsen kdnilsen at openjdk.org
Tue Dec 6 18:42:58 UTC 2022


This commit enforces upper bounds on the number of ShenandoahHeapRegions affiliated with each generation.  Prior to this change, enforcement of generation sizes was by usage alone.  This allowed situations in which so many sparsely populated regions were affiliated with old-gen that there were insufficient FREE regions available to satisfy legitimate young-gen allocation requests.  This was resulting in excessive TLAB allocation failures and degenerated collections.

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

Commit messages:
 - Fix whitespace
 - Merge remote-tracking branch 'GitFarmBranch/enforce-max-old-regions' into enforce-max-regions
 - Remove instrumentation
 - Fixup region budgeting errors
 - Fix spelling error in assertion symbol
 - Enforce bounds on regions per generation

Changes: https://git.openjdk.org/shenandoah/pull/179/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=179&range=00
  Stats: 170 lines in 10 files changed: 103 ins; 7 del; 60 mod
  Patch: https://git.openjdk.org/shenandoah/pull/179.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah pull/179/head:pull/179

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


More information about the shenandoah-dev mailing list