RFR: 8328307: GenShen: Re-enable old-has-grown trigger for old-generation GC [v4]

Kelvin Nilsen kdnilsen at openjdk.org
Thu Mar 28 15:25:09 UTC 2024


> 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  )         10
> 
> +63.84% hyperalloc_a3072_o4096/evacuation p=0.02662
>   Control:     37....

Kelvin Nilsen has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:

 - Merge branch 'master' of https://git.openjdk.org/shenandoah into enable-old-growth-triggers
 - Fix typo introduced during refactoring
 - Respond to reviewer feedback
 - Add a jtreg test for old growth trigger
 - Re-enable old-growth trigger
 - Make satb-mode Info logging less verbose
 - Merge branch 'openjdk:master' into master
 - Merge branch 'openjdk:master' into master
 - Revert "Round LAB sizes down rather than up to force alignment"
   
   This reverts commit 99cce53b3e6e51cee2ed71e0b7c7caa016a8ed4f.
 - Round LAB sizes down rather than up to force alignment
   
   When we round up, we introduce the risk that the new size exceeds the
   maximum LAB size, resulting in an assertion error.
 - ... and 2 more: https://git.openjdk.org/shenandoah/compare/f1d98490...f99a71ac

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

Changes: https://git.openjdk.org/shenandoah/pull/409/files
  Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=409&range=03
  Stats: 218 lines in 4 files changed: 171 ins; 41 del; 6 mod
  Patch: https://git.openjdk.org/shenandoah/pull/409.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/409/head:pull/409

PR: https://git.openjdk.org/shenandoah/pull/409


More information about the shenandoah-dev mailing list