RFR: Fix assertion error with advance promotion budgeting

Kelvin Nilsen kdnilsen at openjdk.org
Mon Oct 31 16:11:43 UTC 2022


Round-off errors were resulting in an assertion error.  Budgeting calculations are "complicated" because only regions that are fully empty may be loaned from old-gen to young-gen.  This change recalculates certain values during budgeting adjustments that follow collection set selection rather than endeavoring to make changes to the values computed before collection set selection.  The API is simpler as a result.

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

Commit messages:
 - Fix whitespace
 - Remove diagnostic messages
 - Remove minimum_evacuation_reserve arg from budgeting calculations
 - Remove regions_available_to_loan argument from budgeting
 - Remove old_regions_loaned_for_young_evac parameter
 - Fix round-off errrors that were causing an assertion failure
 - Revise budgeting calculations to address assertion error

Changes: https://git.openjdk.org/shenandoah/pull/165/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=165&range=00
  Stats: 277 lines in 2 files changed: 170 ins; 53 del; 54 mod
  Patch: https://git.openjdk.org/shenandoah/pull/165.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah pull/165/head:pull/165

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


More information about the shenandoah-dev mailing list