Вопрос

Я работаю на сервере Windows 2003 (64-разрядная версия) с 8 ГБ оперативной памяти.Как я могу увеличить максимальный объем памяти кучи?Я использую -Xmx1500m установите флажок, чтобы увеличить размер кучи до 1500 Мб.Могу ли я увеличить объем оперативной памяти до 75% от физической памяти (куча 6 ГБ)?

Это было полезно?

Решение

Вы можете увеличить размер до 4 ГБ в 32-разрядной системе.Если вы используете 64-битную систему, вы можете подняться выше.Не нужно беспокоиться, если вы выбрали неправильно, если вы запросите 5g в 32-разрядной системе, java пожалуется на недопустимое значение и завершит работу.

Как уже писали другие, используйте флаги командной строки - например

java -Xmx6g myprogram

Вы можете получить полный список (или, во всяком случае, почти полный список), набрав java -X.

Другие советы

Можно увеличить размер кучи, выделяемой JVM, используя параметры командной строки Здесь у нас есть 3 варианта

-Xms<size>        set initial Java heap size
-Xmx<size>        set maximum Java heap size
-Xss<size>        set java thread stack size

java -Xms16m -Xmx64m ClassName

В приведенной выше строке мы можем установить минимальную кучу равной 16 мб, а максимальную - 64 мб

В 32-разрядной JVM самый большой размер кучи, который вы теоретически можете установить, составляет 4 Гб.Чтобы использовать больший размер кучи, вам необходимо использовать 64-разрядную JVM.Попробуйте следующее:

java -Xmx6144M -d64

Флаг -d64 важен, поскольку это указывает JVM на запуск в 64-разрядном режиме.

Можно увеличить размер кучи, выделяемой JVM в eclipse напрямую В eclipse IDE goto

Выполнить----> Выполнить конфигурации----> Аргументы

Введите -Xmx1g (используется для установки максимального размера, например Xmx256m или Xmx1g......m--> mb g--->гб)

java -d64 -Xms512m -Xmx4g Адский мир

где, -d64:Позволит использовать 64-разрядную JVM -Xms512m:Установит начальный размер кучи в 512 МБ -Xmx4g:Установит максимальный размер кучи в 4 ГБ (здесь имя файла java равно :HelloWorld.java )

Могу ли я увеличить объем оперативной памяти до 75% физической памяти (куча 6 ГБ).

Да, ты можешь.На самом деле, вы можете увеличить объем физической памяти до большего, если захотите.

Является ли это хорошей идеей, зависит от того, сколько еще запущено в вашей системе.В частности, если "рабочий набор" запущенных в данный момент приложений и служб значительно превышает доступную физическую память, ваша система подвержена "сбоям", затрачивая много времени на перемещение страниц виртуальной памяти на диск и с диска.Конечный эффект заключается в том, что система становится ужасно медленной.

Вы можете увеличить размер кучи, передав параметры JVM -Xms и -Xmx как показано ниже:

Для файлов Jar:

java -jar -Xms4096M -Xmx6144M jarFilePath.jar

Для файлов Java:

 java -Xms4096M -Xmx6144M ClassName

Вышеуказанные параметры увеличивают Начальный размер объекта (-Xms) до 4 ГБ (4096 МБ) и Максимальный размер (-Xmx) до 6 ГБ (6144 МБ).

Но, в Молодое поколение Размер кучи останется прежним, и дополнительный размер кучи будет добавлен к Старое поколение Размер кучи.Для выровняйте размер кучи молодого поколения и кучи Старого поколения, использовать -XX:NewRatio=1 -XX:-Используйте адаптивную политику параметры.

java -jar -Xms4096M -Xmx6144M -XX:NewRatio=1 -XX:-UseAdaptiveSizePolicy pathToJarFile.jar

-XX:NewRatio = Размер кучи старого поколения :Куча молодого Поколения (Вы можете поиграть с этим соотношением, чтобы получить желаемое соотношение).

Пожалуйста, используйте приведенную ниже команду, чтобы изменить размер кучи на 6 ГБ

export JAVA_OPTS="-Xms6144m -Xmx6144m -XX:NewSize=256m -XX:MaxNewSize=356m -XX:PermSize=256m -XX:MaxPermSize=356m"

Это работает только с 64-разрядной версией Java.Перейдите в Панель управления и нажмите на значок Java.В небольшом окне Панели управления Java щелкните по строке меню Java, а затем нажмите на view кнопка.

Если у вас две платформы Java, отключите предыдущую версию Java, затем нажмите на Параметры времени выполнения текстовое поле и напишите -Xmx1024m или меньше размера оперативной памяти.Не увеличивайте размер кучи, равный оперативной памяти, иначе ваша система выйдет из строя.

Несколько человек указали на конкретные ответы для размера кучи с помощью опций jvm -Xms и -Xms.Я хочу отметить, что это не единственный тип параметров памяти для jvm.В частности, если вы получаете стек поверх потоков, то вам захочется увеличить размер стека, добавив дополнительную опцию, такую как -Xss8m.

Для этой проблемы параметры jvm чего-то вроде -Xms2g -Xmx6g -Xss8m это было бы решением.

Я делюсь этой информацией, поскольку мои поиски в Google о том, как увеличить память jvm, привели меня к этому решению, а решения не работали при больших объемах выделяемой памяти.Как только я выяснил, для чего нужны конкретные настройки, я смог поискать в Google, как увеличить размер стека, и нашел недостающий параметр.:) Надеюсь, это сэкономит время другим, как это сэкономило бы мне кучу времени.:)

ДА.Ты можешь.

Вы можете увеличить объем оперативной памяти до 75% от объема физической памяти (куча 6 ГБ) или выше.

Поскольку вы используете 64-битную версию, вы можете увеличить размер вашей кучи до желаемой величины.В случае, если вы используете 32-разрядную версию, она ограничена 4 ГБ.

$ java -Xms512m -Xmx6144m JavaApplication

Устанавливает начальный размер кучи равным 512 МБ и максимальный размер кучи равным 6 ГБ.

Надеюсь, это поможет..:)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top