<vm name="javaGC">
  <binaryOptions>
    <configurationOption>
      <name>BindGCTaskThreadsToCPUs</name>
      <outputString>XX:?BindGCTaskThreadsToCPUs 1</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>CollectGenFirst</name>
      <outputString>XX:?CollectGen0First 1</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>DisableExplicitGC</name>
      <outputString>XX:?DisableExplicitGC 1</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions>
        <options>UseAdaptiveSizePolicyWithSystemGC</options>
      </excludedOptions>
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>ResizeOldPLAB</name>
      <outputString>XX:?ResizeOldPLAB 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>ResizePLAB</name>
      <outputString>XX:?ResizePLAB 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveGCBoundary</name>
      <outputString>XX:?UseAdaptiveGCBoundary 1</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveGenerationSizePolicyAtMajorCollection</name>
      <outputString>XX:?UseAdaptiveGenerationSizePolicyAtMajorCollection 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions>
        <options>UseAdaptiveSizePolicy</options>
      </impliedOptions>
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveGenerationSizePolicyAtMinorCollection</name>
      <outputString>XX:?UseAdaptiveGenerationSizePolicyAtMinorCollection 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions>
        <options>UseAdaptiveSizePolicy</options>
      </impliedOptions>
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveSizeDecayMajorGCCost</name>
      <outputString>XX:?UseAdaptiveSizeDecayMajorGCCost 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveSizePolicy</name>
      <outputString>XX:?UseAdaptiveSizePolicy 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveSizePolicyFootprintGoal</name>
      <outputString>XX:?UseAdaptiveSizePolicyFootprintGoal 0</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
    <configurationOption>
      <name>UseAdaptiveSizePolicyWithSystemGC</name>
      <outputString>XX:?UseAdaptiveSizePolicyWithSystemGC 1</outputString>
      <prefix>
      </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions>
        <options>UseAdaptiveSizePolicy</options>
      </impliedOptions>
      <excludedOptions>
        <options>DisableExplicitGC</options>
      </excludedOptions>
      <defaultValue>Selected</defaultValue>
      <optional>True</optional>
    </configurationOption>
  </binaryOptions>
  <numericOptions>
    <configurationOption>
      <name>XX:AdaptiveSizeDecrementScaleFactor</name>
      <outputString>
      </outputString>
      <prefix>XX:AdaptiveSizeDecrementScaleFactor </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>32</maxValue>
      <stepFunction>XXAdaptiveSizeDecrementScaleFactor + 1.0</stepFunction>
      <defaultValue>4</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:AdaptiveSizeMajorGCDecayTimeScale</name>
      <outputString>
      </outputString>
      <prefix>XX:AdaptiveSizeMajorGCDecayTimeScale </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>5</minValue>
      <maxValue>25</maxValue>
      <stepFunction>XXAdaptiveSizeMajorGCDecayTimeScale + 1.0</stepFunction>
      <defaultValue>10</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:AdaptiveSizePolicyCollectionCostMargin</name>
      <outputString>
      </outputString>
      <prefix>XX:AdaptiveSizePolicyCollectionCostMargin </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>25</minValue>
      <maxValue>75</maxValue>
      <stepFunction>XXAdaptiveSizePolicyCollectionCostMargin + 5.0</stepFunction>
      <defaultValue>50</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:AdaptiveSizePolicyInitializingSteps</name>
      <outputString>
      </outputString>
      <prefix>XX:AdaptiveSizePolicyInitializingSteps </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>10</minValue>
      <maxValue>90</maxValue>
      <stepFunction>XXAdaptiveSizePolicyInitializingSteps + 5.0</stepFunction>
      <defaultValue>20</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:AdaptiveSizePolicyWeight</name>
      <outputString>
      </outputString>
      <prefix>XX:AdaptiveSizePolicyWeight </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>5</minValue>
      <maxValue>40</maxValue>
      <stepFunction>XXAdaptiveSizePolicyWeight + 5.0</stepFunction>
      <defaultValue>10</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:MaxTenuringThreshold</name>
      <outputString>
      </outputString>
      <prefix>XX:MaxTenuringThreshold </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>4</minValue>
      <maxValue>30</maxValue>
      <stepFunction>XXMaxTenuringThreshold + 1.0</stepFunction>
      <defaultValue>15</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:MaxHeapFreeRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:MaxHeapFreeRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>50</minValue>
      <maxValue>90</maxValue>
      <stepFunction>XXMaxHeapFreeRatio + 5.0</stepFunction>
      <defaultValue>70</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:MinHeapFreeRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:MinHeapFreeRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>10</minValue>
      <maxValue>50</maxValue>
      <stepFunction>XXMinHeapFreeRatio + 5.0</stepFunction>
      <defaultValue>40</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:MinSurvivorRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:MinSurvivorRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>10</maxValue>
      <stepFunction>XXMinSurvivorRatio + 1.0</stepFunction>
      <defaultValue>3</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:NewRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:NewRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>32</maxValue>
      <stepFunction>XXNewRatio * 2.0</stepFunction>
      <defaultValue>2</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:OldPLABSize</name>
      <outputString>
      </outputString>
      <prefix>XX:OldPLABSize </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>256</minValue>
      <maxValue>2048</maxValue>
      <stepFunction>XXOldPLABSize * 2.0</stepFunction>
      <defaultValue>1024</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:PLABWeight</name>
      <outputString>
      </outputString>
      <prefix>XX:PLABWeight </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>50</minValue>
      <maxValue>90</maxValue>
      <stepFunction>XXPLABWeight + 5.0</stepFunction>
      <defaultValue>75</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:SurvivorPadding</name>
      <outputString>
      </outputString>
      <prefix>XX:SurvivorPadding </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>10</maxValue>
      <stepFunction>XXSurvivorPadding + 1.0</stepFunction>
      <defaultValue>3</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:SurvivorRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:SurvivorRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>30</maxValue>
      <stepFunction>XXSurvivorRatio + 1.0</stepFunction>
      <defaultValue>8</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:TargetPLABWastePct</name>
      <outputString>
      </outputString>
      <prefix>XX:TargetPLABWastePct </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>1</minValue>
      <maxValue>20</maxValue>
      <stepFunction>XXTargetPLABWastePct + 1.0</stepFunction>
      <defaultValue>10</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:TargetSurvivorRatio</name>
      <outputString>
      </outputString>
      <prefix>XX:TargetSurvivorRatio </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>25</minValue>
      <maxValue>75</maxValue>
      <stepFunction>XXTargetSurvivorRatio + 5.0</stepFunction>
      <defaultValue>50</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:TenuredGenerationSizeIncrement</name>
      <outputString>
      </outputString>
      <prefix>XX:TenuredGenerationSizeIncrement </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>10</minValue>
      <maxValue>50</maxValue>
      <stepFunction>XXTenuredGenerationSizeIncrement + 5.0</stepFunction>
      <defaultValue>20</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:TenuredGenerationSizeSupplement</name>
      <outputString>
      </outputString>
      <prefix>XX:TenuredGenerationSizeSupplement </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>55</minValue>
      <maxValue>90</maxValue>
      <stepFunction>XXTenuredGenerationSizeSupplement + 5.0</stepFunction>
      <defaultValue>80</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:TenuredGenerationSizeSupplementDecay</name>
      <outputString>
      </outputString>
      <prefix>XX:TenuredGenerationSizeSupplementDecay </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>2</minValue>
      <maxValue>16</maxValue>
      <stepFunction>XXTenuredGenerationSizeSupplementDecay + 1.0</stepFunction>
      <defaultValue>2</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:YoungGenerationSizeIncrement</name>
      <outputString>
      </outputString>
      <prefix>XX:YoungGenerationSizeIncrement </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>10</minValue>
      <maxValue>50</maxValue>
      <stepFunction>XXYoungGenerationSizeIncrement + 5.0</stepFunction>
      <defaultValue>20</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:YoungGenerationSizeSupplement</name>
      <outputString>
      </outputString>
      <prefix>XX:YoungGenerationSizeSupplement </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>55</minValue>
      <maxValue>90</maxValue>
      <stepFunction>XXYoungGenerationSizeSupplement + 5.0</stepFunction>
      <defaultValue>80</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:YoungGenerationSizeSupplementDecay</name>
      <outputString>
      </outputString>
      <prefix>XX:YoungGenerationSizeSupplementDecay </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>2</minValue>
      <maxValue>16</maxValue>
      <stepFunction>XXYoungGenerationSizeSupplementDecay + 1.0</stepFunction>
      <defaultValue>8</defaultValue>
    </configurationOption>
    <configurationOption>
      <name>XX:YoungPLABSize</name>
      <outputString>
      </outputString>
      <prefix>XX:YoungPLABSize </prefix>
      <postfix>
      </postfix>
      <parent>
      </parent>
      <children />
      <impliedOptions />
      <excludedOptions />
      <minValue>512</minValue>
      <maxValue>8192</maxValue>
      <stepFunction>XXYoungPLABSize + 1.0</stepFunction>
      <defaultValue>4096</defaultValue>
    </configurationOption>
  </numericOptions>
</vm>