RFR: Usage tracking cleanup

William Kemper wkemper at openjdk.org
Mon Apr 17 22:39:25 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.

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

Commit messages:
 - Merge branch 'shenandoah-master' into alloc-tracking-cleanup
 - Remove invalid assert
 - Merge branch 'shenandoah-master' into alloc-tracking-cleanup
 - Consolidate usage/allocate/waste accounting
 - WIP: Oops - report usage in bytes, not words
 - WIP: Initialize new padding field
 - WIP: Record padding/waste in allocation request
 - WIP: Trying to clean up usage accounting

Changes: https://git.openjdk.org/shenandoah/pull/260/files
 Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=260&range=00
  Stats: 238 lines in 6 files changed: 110 ins; 98 del; 30 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