Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8223837

Add -XX:MinHeapSize flag to set the minimum heap size

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 13
    • None
    • hotspot
    • None
    • gc
    • b25

        Currently the -Xms flag is documented to set the initial heap size, but it also sets the minimum heap size. The initial heap size can be overridden with the -XX:InitialHeapSize flag, but there is no such flag for the minimum heap size.

        To set the minimum heap size to a value different than the initial heap size the user must specify -Xms before -XX:InitialHeapSize.

        For example:
        -Xms4g -XX:InitialHeapSize=8g sets the minimum size to commit for the heap to 4g and the initially committed heap size to 8g.

        On the other hand, the following command line:
        -XX:InitialHeapSize=8g -Xms4g sets both the minimum and initial heap size to 4g.

        This RFE proposes that we introduce a -XX:MinHeapSize flag to make it easier to independently set the minimum heap size and initial heap size.

        The user will get the expected behavior from either of the following command lines:
        -XX:MinHeapSize=4g -XX:InitialHeapSize=8g
        -XX:InitialHeapSize=8g -XX:MinHeapSize=4g

        The -Xms flag will keep it's old behavior and set both minimum and initial heap size, but when setting the minimum heap size it will change the MinHeapSize flag and not a JVM internal global variable. -Xms will behave as if both -XX:MinHeapSize and -XX:InitialHeapSize were set on the command line.

        The VM will enforce the relationship:
        MinHeapSize <= InitialHeapSize <= MaxHeapSize

              stefank Stefan Karlsson
              stefank Stefan Karlsson
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: