RFR: Borrow from old gen

Kelvin Nilsen kdnilsen at openjdk.java.net
Tue Feb 8 00:02:36 UTC 2022


On Mon, 7 Feb 2022 22:45:45 GMT, William Kemper <wkemper at openjdk.org> wrote:

>> This commit represents multiple months of incremental performance improvements to allow generational shenandoah to run more efficiently, especially with larger heap sizes and high memory utilization.
>> 
>> Specific improvements are described in individual commit log messages.
>
> src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp line 253:
> 
>> 251: void ShenandoahHeapRegion::make_cset() {
>> 252:   shenandoah_assert_heaplocked();
>> 253:   // Leave age untouched.  We need to consult the age when we are deciding whether to promote evacuated objects.
> 
> Many other state transitions also `reset_age` and I'm not sure it's necessary. Seems sufficient to do it only for `make_trash`.

This is the only case that was causing me "trouble".  Here are the other scenarios found by grep:
  shenandoahHeap.cpp: 2559: ShenandoahFinalUpdateRefsUpdateRegionStateClosure::heap_region_do()

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

PR: https://git.openjdk.java.net/shenandoah/pull/110


More information about the shenandoah-dev mailing list