RFR: Expand old on demand [v52]
Kelvin Nilsen
kdnilsen at openjdk.org
Fri May 19 14:26:12 UTC 2023
> This PR describes several proposed changes to dynamically adjust the sizes of old-gen and young-gen. In general, the objective is to keep old-gen as small as possible so that there is an abundance of memory available for the young-gen allocation runway.
>
> This PR now passes all GHA pre-integration tests and other internal CI tests.
Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:
Improve handoff of generation sizing impacts
At the end of a completed GC cycle, we make adjustments in the
generation sizes. These adjusted are based on the number of trash
regions (the size of the just-evacuated collection set) and the number
of regions needed within old-gen to support any mixed evacuation effort
or promotion that is anticipated to happen during the next GC cycle.
Recycling of trashed regions and transfer of region membership between
generations happens after we rebuild the free set. This commit assures that
the free set rebuild process know how much memory will eventually be
available in each generation after we finish reclaiming trashed regions
and transfering regions between generations.
-------------
Changes:
- all: https://git.openjdk.org/shenandoah/pull/248/files
- new: https://git.openjdk.org/shenandoah/pull/248/files/2b517dcb..4298ca7e
Webrevs:
- full: https://webrevs.openjdk.org/?repo=shenandoah&pr=248&range=51
- incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=248&range=50-51
Stats: 191 lines in 7 files changed: 163 ins; 8 del; 20 mod
Patch: https://git.openjdk.org/shenandoah/pull/248.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/248/head:pull/248
PR: https://git.openjdk.org/shenandoah/pull/248
More information about the shenandoah-dev
mailing list