RFR: 8328075: Shenandoah: Avoid forwarding when objects don't move in full-GC [v2]

Roman Kennke rkennke at openjdk.org
Fri Mar 15 11:10:43 UTC 2024


On Thu, 14 Mar 2024 20:01:02 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> 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

Thanks!

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

PR Comment: https://git.openjdk.org/jdk/pull/18280#issuecomment-1999427203


More information about the shenandoah-dev mailing list