RFR: 8331609: GenShen: Refactor generational mode allocations
William Kemper
wkemper at openjdk.org
Thu May 2 23:26:17 UTC 2024
* The code for resizing and retrying young allocation requests according to what's available in the young generation has been removed. This code became redundant after the free set was rewritten and began providing the same functionality.
* An unused field and its attendant methods were removed from `ShenandoahThreadLocalData`.
* The code for managing `plab` expenditures and configuring other plab behavior has been moved from `ShenandoahHeap` into `ShenandoahOldGeneration`.
-------------
Commit messages:
- Whitespace fixes
- Refactor for clarity, add a unit-ish test
- Move code out of shHeap into shOldGeneration
- Factor out code to test if plab allocation is possible
- Return early from plab allocation if old generation is exhausted
- Simplify and document promotion reserve handling
- Begin to clean up and isolate generational allocation path
Changes: https://git.openjdk.org/shenandoah/pull/427/files
Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=427&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8331609
Stats: 495 lines in 7 files changed: 266 ins; 175 del; 54 mod
Patch: https://git.openjdk.org/shenandoah/pull/427.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/427/head:pull/427
PR: https://git.openjdk.org/shenandoah/pull/427
More information about the shenandoah-dev
mailing list