RFR: 8373023: [REDO] Remove the default value of InitialRAMPercentage

Joel Sikström jsikstro at openjdk.org
Wed Dec 3 16:17:48 UTC 2025


Hello,

We backed out this change in https://github.com/openjdk/jdk/pull/28617 after issues in found in testing. Moving forward, we've decided to problem list a few tests that assumes that a GC does not run during their execution. When the initial heap size becomes very low with this change, it may trigger additional GCs, which may interfere with a few tests.

We are planning to follow up on the problem lists with test fixes in:
https://github.com/openjdk/jdk/pull/28638, https://github.com/openjdk/jdk/pull/28637

>From the original RFE: 

This RFE changes the default of `InitialRAMPercentage` to 0, effectively removing its default value. Please see the CSR for specific details on this change.

Changing the default value to 0 results in the behavior that the initial heap size (InitialHeapSize) is set to the minimum heap size (MinHeapSize). This is because of the following lines in `Arguments::set_heap_size()`, which takes the MAX value of MinHeapSize as well:

uint64_t initial_memory = (uint64_t)(((double)MaxRAM * InitialRAMPercentage) / 100);
...

reasonable_initial = MAX3(reasonable_initial, reasonable_minimum, MinHeapSize);
reasonable_initial = MIN2(reasonable_initial, MaxHeapSize);


This change improves startup performance for all GCs, but affects the time-to-peak performance in some out-of-the-box configurations for some GCs. This is mainly visible in ParallelGC.

Testing:
* Oracle's tier1-3

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

Commit messages:
 - 8373023: [REDO] Remove the default value of InitialRAMPercentage

Changes: https://git.openjdk.org/jdk/pull/28641/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28641&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8373023
  Stats: 17 lines in 5 files changed: 13 ins; 1 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/28641.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28641/head:pull/28641

PR: https://git.openjdk.org/jdk/pull/28641


More information about the hotspot-dev mailing list