RFR: Expand old on demand [v63]

Kelvin Nilsen kdnilsen at openjdk.org
Thu May 25 03:20:31 UTC 2023


> This PR describes several proposed changes to dynamically adjust the sizes of old-gen and young-gen.  In general, the objective is to keep old-gen as small as possible so that there is an abundance of memory available for the young-gen allocation runway.
> 
> This PR now passes all GHA pre-integration tests and other internal CI tests.

Kelvin Nilsen has updated the pull request incrementally with two additional commits since the last revision:

 - Allow OOM failures to occur more quickly
   
   After a change to increase the defaulit number of consecutive
   degenerated cycles that can occur before a full gc is triggered,
   the number of allocation retries that must be completed before throwing
   an OutOfMemory exception increased significantly.  This commit provides
   a mechanism to more quickly decide to throw OOM.
 - Revert default value of ShenandoahGuaranteedYoungGCInterval
   
   The previous change was somewhat arbitrary and masks a bigger problem
   with triggering GC following periods of idle activity.  An alternative
   approach to triggering should be developed in the future.

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

Changes:
  - all: https://git.openjdk.org/shenandoah/pull/248/files
  - new: https://git.openjdk.org/shenandoah/pull/248/files/e02032d3..f6f35154

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=shenandoah&pr=248&range=62
 - incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=248&range=61-62

  Stats: 22 lines in 4 files changed: 18 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/shenandoah/pull/248.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/248/head:pull/248

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


More information about the shenandoah-dev mailing list