Что означает опция -Xmn jvm

Я безуспешно пытался найти в Интернете информацию об опции -Xmn.

Может кто-нибудь объяснить, что это означает и как я могу использовать его для настройки JVM?


person Bhushan    schedule 27.05.2014    source источник
comment
Должно быть -Xms. Не так ли?   -  person Abimaran Kugathasan    schedule 27.05.2014
comment
@AbimaranKugathasan Существует флаг -Xmn, отличный от -Xms   -  person awksp    schedule 27.05.2014


Ответы (3)


Из здесь:

-Xmn : размер кучи для молодого поколения

Молодое поколение представляет собой все объекты, имеющие короткую жизнь во времени. Объекты молодого поколения находятся в определенном месте в куче, где часто будет проходить сборщик мусора. Все новые объекты создаются в области молодого поколения (называемой Эдемом). Когда выживший объект все еще жив после более чем 2-3 очисток gc, тогда он будет заменен на старое поколение: он выживший.

И более официальный источник из IBM:

-Xmn

Устанавливает начальный и максимальный размер новой (детской) кучи на указанное значение при использовании -Xgcpolicy:gencon. Эквивалентно установке как -Xmns, так и -Xmnx. Если вы установите либо -Xmns, либо -Xmnx, вы не сможете установить -Xmn. Если вы попытаетесь установить -Xmn с помощью -Xmns или -Xmnx, виртуальная машина не запустится, возвращая ошибку. По умолчанию внутри выбирается -Xmn в соответствии с возможностями вашей системы. Вы можете использовать параметр -verbose:sizes, чтобы узнать значения, которые в настоящее время использует виртуальная машина.

person awksp    schedule 27.05.2014
comment
Первый источник неверен. Это размер молодого поколения, а не только Эдем (который является частью молодого поколения) - person Piotr Idzikowski; 09.10.2014
comment
@piotrek Поверю тебе на слово. Спасибо! - person awksp; 09.10.2014

Из учебных документов Oracle по настройке производительности GC:

-Xmn[size]: размер пространства кучи молодого поколения.

Приложения с упором на производительность, как правило, используют -Xmn для определения размера молодого поколения, потому что он сочетает в себе использование -XX:MaxNewSize и -XX:NewSize и почти всегда явно устанавливает -XX:PermSize и -XX :MaxPermSize на то же значение.

Короче говоря, он устанавливает для значений NewSize и MaxNewSize элемента Новое поколение одно и то же значение.

person eaorak    schedule 09.12.2015

-Xmn : размер кучи для молодого поколения. Молодое поколение представляет все объекты, которые имеют короткую жизнь во времени. Объекты молодого поколения находятся в определенном месте в куче, где часто будет проходить сборщик мусора. Все новые объекты создаются в регионе молодого поколения (так называемом «эдеме»). Когда выживший объект все еще «жив» после более чем 2-3 очисток gc, тогда он будет заменен на «старое поколение»: они «выжившие».

Хороший размер 33%

Источник

person dimoniy    schedule 27.05.2014
comment
Ссылка на источник мертва. Вот архив Wayback Machine этой ссылки: https://web.archive.org/web/20140613034154/http://www.avricot.com/blog/?post/2010/05/03/Началоработысjava-памятьюJVM-(куча%2C-стек%2C-xss-xms-xmx-xmn...) - person Hetul Patel; 06.04.2017