RFR: 8370039: GenShen: array copy SATB barrier improvements [v2]
William Kemper
wkemper at openjdk.org
Mon Nov 10 23:59:33 UTC 2025
> When an array copy happens concurrently with old and young marking, Shenandoah's generational mode walks over the array twice. This is unnecessary and increases the workload for marking threads. It also has been unconditionally enqueuing old references during a young mark. This is also unnecessary and also increases marking workload. Finally, the barrier went through a somewhat complicated decision process based on affiliation of the region where the array resides. However, the barrier must consider the affiliation of objects that are pointed at by array elements.
William Kemper has updated the pull request incrementally with two additional commits since the last revision:
- SATB barrier for old must be independent of young collection gc state
- We can also filter out old when striclty marking young
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/28183/files
- new: https://git.openjdk.org/jdk/pull/28183/files/3086fd30..ddd3d6d9
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=28183&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=28183&range=00-01
Stats: 67 lines in 5 files changed: 43 ins; 4 del; 20 mod
Patch: https://git.openjdk.org/jdk/pull/28183.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28183/head:pull/28183
PR: https://git.openjdk.org/jdk/pull/28183
More information about the hotspot-gc-dev
mailing list