Как увеличить объем памяти для JVM за пределы 1 ГБ
Когда я пытаюсь установить -Xms
а также -Xmx
значения более 1 ГБ, я получаю сообщение об ошибке:
Произошла ошибка при инициализации ВМ
Мой компьютер имеет 8 ГБ оперативной памяти.
Мне нужно держать и манипулировать огромным количеством данных в памяти.
4 ответа
Максимальный размер кучи 32-битной JVM может составлять не более 4 ГБ - в некоторых системах он меньше из-за различных технических причин (таких как необходимость в непрерывной памяти). Попробуйте использовать 64-битную версию, если вы работаете на 64-битной машине.
Причина этого заключается в том, что максимальное количество адресов, на которые вы можете указать 32-битные биты, равно 2^32, что составляет 4 ГБ. Этот теоретический максимум никогда не будет доступен пользователю, так как он необходим JVM для Klass
файлы (внутреннее представление вашего кода) и другие вещи.
Также посмотрите этот вопрос.
Если вы используете 64-разрядную операционную систему, тогда реальное решение - добавить -d64, чтобы заставить его работать в 64-разрядном режиме и, следовательно, выделить 4 ГБ.
ИМХО это примерно такая же проблема с небольшим отличием в вопросе..
Проблема выделения памяти в Eclipse
Как вы можете видеть, среда выполнения Java установлена в панели управления Java. Попробуйте добавить параметр времени выполнения, например -Xmx3072m
в столбце Runtime Parameter.
Или, возможно, вы могли бы проверить эту статью...
Как увеличить память Java в Windows 7
Надеюсь, это поможет решить проблему...
С уважением, Иван
Я бы определенно предложил вам пройти через статью
Помимо Ram, параметры xmx также зависят от таких параметров, как os,jvm bit и т. Д.
Также предложил бы вам иметь статистику, чтобы определить, сколько свободной памяти там. См. Http://viralpatel.net/blogs/getting-jvm-heap-size-used-memory-total-memory-using-java-runtime/, чтобы определить количество используемой памяти и свободной памяти.
Чтобы иметь лучшее использование, оно должно быть как то есть 64-битной ОС и 64-битной VM
В 32-разрядных выпусках Windows приложениям доступно 4 гигабайта (ГБ) виртуального адресного пространства. Виртуальное адресное пространство разделено таким образом, что приложению доступны 2 ГБ, а остальные 2 ГБ - только системе. См. http://msdn.microsoft.com/en-us/library/Aa366521
поэтому убедитесь, что у вас достаточно памяти (что бы вы ни упоминали в отношении параметров xms и xmx) с программой, о которой я упоминал выше