RFR: Usage tracking cleanup [v5]

William Kemper wkemper at openjdk.org
Fri Apr 21 00:40:45 UTC 2023


> There are many nuances to tracing memory utilization. Shenandoah track's usage, waste by humongous objects, padding for promotion LABs alignment and all this is also tracked by generation, the heap and feeds into the heuristics and the pacer. The code to update all of these values and route them to the right places was spread across the allocation call stack. This change consolidates all of the logic into one method, invoked near the end of the allocation.

William Kemper has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 16 commits:

 - Fix serviceability tests
 - Merge branch 'shenandoah-master' into alloc-tracking-cleanup
 - Remove invalid assertion and unused field
 - Remove vestigial assertion, improve documentation for ShenandoahElasticTLAB
 - Track total heap usage in global generation
 - Remove unused method: clear_used
 - Readability improvements
 - Merge branch 'shenandoah-master' into alloc-tracking-cleanup
 - Merge branch 'shenandoah-master' into alloc-tracking-cleanup
 - Remove invalid assert
 - ... and 6 more: https://git.openjdk.org/shenandoah/compare/5984bd29...31003e80

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

Changes: https://git.openjdk.org/shenandoah/pull/260/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=260&range=04
  Stats: 446 lines in 16 files changed: 232 ins; 136 del; 78 mod
  Patch: https://git.openjdk.org/shenandoah/pull/260.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/260/head:pull/260

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


More information about the shenandoah-dev mailing list