RFR: 8328075: Shenandoah: Avoid forwarding when objects don't move in full-GC [v2]
Roman Kennke
rkennke at openjdk.org
Thu Mar 14 20:01:02 UTC 2024
> Currently, in Shenandoah's full-GC, we forward all marked objects (and preserve their headers), even if they don't move. This typically happens for a certain amount of 'sediment' that accumulates at the bottom of the heap. This results in wasted CPU cycles and memory accesses and usage. It can easily be avoided by not forwarding objects that don't move.
>
> The fix is to simply not forward objects when they don't move.
>
> Testing:
> - [x] hotspot_gc_shenandoah
> - [x] tier1 +UseShenandoahGC
Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
Comment and assert msg improvement
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/18280/files
- new: https://git.openjdk.org/jdk/pull/18280/files/079fe89d..69493333
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=18280&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=18280&range=00-01
Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
Patch: https://git.openjdk.org/jdk/pull/18280.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18280/head:pull/18280
PR: https://git.openjdk.org/jdk/pull/18280
More information about the shenandoah-dev
mailing list