Значения по умолчанию для Xmx, Xms, MaxPermSize для машин, не относящихся к серверу
Каковы значения по умолчанию для следующих параметров в Java 6 на машине, отличной от сервера?
Oracle документация утверждает, что:
На машинах класса сервера, на которых запущена VM сервера, сборщик мусора (GC) изменился с предыдущего последовательного сборщика (-XX: + UseSerialGC) на параллельный коллектор (-XX: + UseParallelGC).
и
На машинах класса сервера, на которых запущена либо виртуальная машина (клиент или сервер) с параллельным сборщиком мусора (-XX: + UseParallelGC), размер начальной кучи и максимальный размер кучи изменились
Страница не описывает значения по умолчанию для машин, не относящихся к серверу, только то, что, например, начальный размер кучи является "разумным минимумом". Глядя на "man page" для команды java
, существует следующее против -Xms
:
Значение по умолчанию выбирается во время выполнения на основе конфигурации системы
Ответы
Ответ 1
Значения по умолчанию для JDK 1.6.0_29 для Windows 7/32-бит:
-Xmx256m
-XX:MaxPermSize=64m
Также значение этой опции может быть напечатано следующей командой:
java -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version 2>&1
Затем найдите ключи MaxHeapSize и MaxPermSize и увидите значения по умолчанию.
uintx InitialHeapSize := 199947456 {product}
uintx MaxHeapSize := 268435456 {product}
uintx MaxPermSize = 67108864 {pd product}
Подробнее здесь.