RFR: 8328307: GenShen: Re-enable old-has-grown trigger for old-generation GC [v14]
William Kemper
wkemper at openjdk.org
Wed Apr 24 16:50:52 UTC 2024
On Tue, 23 Apr 2024 21:15:07 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:
>> Enable old-gen growth triggers, which were inadvertantly disabled. This passes the internal regression pipeline tests.
>>
>> As would be expected, we see an increase in mixed-evacuation triggers. We also see significant improvement on certain extremem workloads due to improved clearing of old-gen.
>>
>>
>> Control: shenandoah-x86-template
>> Experiment: enable-old-growth-triggers-gh-x86
>>
>> Most impacted benchmarks | Most impacted metrics
>> -------------------------------------------------------------------------------------------------------
>> Genshen/extremem-phased | trigger_expedite_mixed
>> Genshen/specjbb2015_weak_ref_patch | trigger_failure
>> Genshen/specjbb2015 | context_switch_count
>> Genshen/hyperalloc_a3072_o4096 | sla_25000_jops
>> Shenandoah/specjbb2015 | trigger_learn
>>
>>
>> Only in experiment | Only in control
>> -------------------------------------------------------------------------------------------------------
>> hyperalloc_a2048_o2048/trigger_expedite_mixed | compress/concurrent_thread_roots
>> hyperalloc_a2048_o4096/trigger_expedite_mixed | crypto.rsa/ctr_thread_roots
>> hyperalloc_a3072_o2048/trigger_expedite_mixed | crypto.rsa/ctr_total
>> hyperalloc_a3072_o4096/trigger_expedite_mixed | extremem-large-31g/trigger_expansion
>> extremem-large-31g/trigger_overgrown | extremem-phased/trigger_expansion
>>
>> Genshen
>> -------------------------------------------------------------------------------------------------------
>> +685.00% specjbb2015_weak_ref_patch/trigger_expedite_mixed p=0.00002
>> Control: 2.500 (+/- 0.68 ) 30
>> Test: 19.625 (+/- 4.79 ) 10
>>
>> +561.90% specjbb2015/trigger_expedite_mixed p=0.00001
>> Control: 2.625 (+/- 0.92 ) 30
>> Test: 17.375 (+/- 3.89 ) 10
>>
>> +225.42% extremem-phased/trigger_expedite_mixed p=0.00000
>> Control: 9.833 (+/- 3.48 ) 30
>> Test: 32.000 (+/- 2.58 ) ...
>
> Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:
>
> Fix typo
Looks good. Minor nit: unnecessary cast in shHeap.cpp:2838
src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp line 2838:
> 2836: ShenandoahGenerationalHeap* gen_heap = ShenandoahGenerationalHeap::heap();
> 2837: ShenandoahOldGeneration* old_gen = gen_heap->old_generation();
> 2838: ShenandoahOldHeuristics* old_heuristics = (ShenandoahOldHeuristics*) old_gen->heuristics();
Shouldn't need to cast here.
-------------
Changes requested by wkemper (Committer).
PR Review: https://git.openjdk.org/shenandoah/pull/409#pullrequestreview-2020419160
PR Review Comment: https://git.openjdk.org/shenandoah/pull/409#discussion_r1578215530
More information about the shenandoah-dev
mailing list