Каковы параметры Xms и Xmx при запуске JVM?

Пожалуйста, объясните использование Xms а также Xmx параметры в JVM. Каковы значения по умолчанию для них?

6 ответов

Решение

Флаг Xmx задает максимальный пул выделения памяти для виртуальной машины Java (JVM), а Xms указывает начальный пул выделения памяти.

Это означает, что ваша JVM будет запущена с Xms объем памяти и сможет использовать максимум Xmx количество памяти. Например, запуск JVM, как показано ниже, запустит его с 256 МБ памяти и позволит процессу использовать до 2048 МБ памяти:

java -Xms256m -Xmx2048m

Флаг памяти также может быть указан в нескольких размерах, например, в килобайтах, мегабайтах и ​​т. Д.

-Xmx1024k
-Xmx512m
-Xmx8g

Xms флаг не имеет значения по умолчанию, и Xmx обычно имеет значение по умолчанию 256 МБ. Обычно эти флаги используются, когда вы сталкиваетесь с java.lang.OutOfMemoryError,

При использовании этих настроек имейте в виду, что эти настройки предназначены для кучи JVM, и что JVM может / будет использовать больше памяти, чем просто размер, выделенный для кучи. Из документации Oracle:

Обратите внимание, что JVM использует больше памяти, чем просто кучу. Например, методы Java, стеки потоков и собственные дескрипторы размещаются в памяти отдельно от кучи, а также внутренних структур данных JVM.

Запустите команду java -X и вы получите список всех -X опции:

C:\Users\Admin>java -X
-Xmixed           mixed mode execution (default)
-Xint             interpreted mode execution only
-Xbootclasspath:<directories and zip/jar files separated by ;>
                      set search path for bootstrap classes and resources
-Xbootclasspath/a:<directories and zip/jar files separated by ;>
                      append to end of bootstrap class path
-Xbootclasspath/p:<directories and zip/jar files separated by ;>
                      prepend in front of bootstrap class path
-Xdiag            show additional diagnostic messages
-Xnoclassgc       disable class garbage collection
-Xincgc           enable incremental garbage collection
-Xloggc:<file>    log GC status to a file with time stamps
-Xbatch           disable background compilation
-Xms<size>        set initial Java heap size.........................
-Xmx<size>        set maximum Java heap size.........................
-Xss<size>        set java thread stack size
-Xprof            output cpu profiling data
-Xfuture          enable strictest checks, anticipating future default
-Xrs              reduce use of OS signals by Java/VM (see documentation)
-Xcheck:jni       perform additional checks for JNI functions
-Xshare:off       do not attempt to use shared class data
-Xshare:auto      use shared class data if possible (default)
-Xshare:on        require using shared class data, otherwise fail.
-XshowSettings    show all settings and continue
-XshowSettings:all         show all settings and continue
-XshowSettings:vm          show all vm related settings and continue
-XshowSettings:properties  show all property settings and continue
-XshowSettings:locale      show all locale related settings and continue

Опции -X нестандартны и могут быть изменены без предварительного уведомления.

Я надеюсь, что это поможет вам понять Xms, Xmx, а также многие другие важные вещи.:)

-Xms начальный размер кучи для запуска, однако во время рабочего процесса размер кучи может быть меньше -Xms из-за неактивности пользователей или итераций сборщика мусора. Это не минимально необходимый размер кучи.

-Xmx максимальный размер кучи

Вы можете указать это в вашей IDE. Например, для Eclipse в Конфигурации запускаАргументы виртуальной машины. Вы входите -Xmx800m -Xms500m:

Основная часть вопроса уже была рассмотрена выше. Просто добавив часть значений по умолчанию.

Согласно http://docs.oracle.com/cd/E13150_01/jrockit_jvm/jrockit/jrdocs/refman/optionX.html

Значение по умолчанию Xmx будет зависеть от платформы и объема памяти, доступного в системе.

очень простой

Xss используется для установки размера памяти стека

Размер кучи запуска xms

Xmx Максимальный размер кучи, если не установлен, используется 256 МБ

Другие вопросы по тегам