If users do not specify the initial Java heap size using
-Xms or -XX:InitialHeapSize, the Java
Virtual Machine's (JVM) memory management decides the initial Java
heap size using the InitialRAMPercentage setting. The
default has been 1/64 of the system's physical RAM. This behavior
results in large initial Java heap sizes on modern systems with a
substantial amount of memory, increasing JVM startup times due to
necessary initialization of Java heap-related internal data
structures.
This change removes the default value of
InitialRAMPercentage. Now, if the user does not
specify an initial Java heap size, the JVM sets the initial heap
size to the minimum possible heap size, which equals to
MinHeapSize. This improves startup performance for
default JVM configurations by reducing internal memory
initialization.
To get the previous behavior, users can explicitly set
InitialRAMPercentage to the original value of
1.5625, or configure the initial Java heap size
directly using the -Xms or
-XX:InitialHeapSize options.