Estoy trabajando en un servidor Windows 2003 (64 bits) con 8 GB de RAM. ¿Cómo puedo aumentar el máximo de memoria de almacenamiento dinámico? Estoy usando la -Xmx1500m
bandera para aumentar el tamaño del montón a 1500 Mb. ¿Puedo aumentar la memoria de almacenamiento dinámico al 75% de la memoria física (almacenamiento dinámico de 6 GB)?
java
heap-memory
Sunil
fuente
fuente
-Xmx6g
? ¿Esto no funcionó? ¿Qué observaste?Respuestas:
Puede aumentar a 4 GB en un sistema de 32 bits. Si está en un sistema de 64 bits, puede ir más alto. No debe preocuparse si ha elegido incorrectamente, si solicita 5 g en un sistema de 32 bits, Java se quejará de un valor no válido y se cerrará.
Como otros han publicado, use las banderas de línea cmd, por ejemplo
Puede obtener una lista completa (o una lista casi completa, de todos modos) escribiendo java -X.
fuente
Es posible aumentar el tamaño de almacenamiento dinámico asignado por la JVM mediante el uso de opciones de línea de comandos. Aquí tenemos 3 opciones
En la línea anterior, podemos establecer el almacenamiento dinámico mínimo en 16 MB y el almacenamiento dinámico máximo en 64 MB
fuente
En una JVM de 32 bits, el tamaño de almacenamiento dinámico más grande que puede establecer teóricamente es de 4 gb. Para usar un tamaño de almacenamiento dinámico más grande, debe usar una JVM de 64 bits. Intenta lo siguiente:
El indicador -d64 es importante ya que le dice a la JVM que se ejecute en modo de 64 bits.
fuente
Es posible aumentar el tamaño de almacenamiento dinámico asignado por la JVM en eclipse directamente En eclipse IDE goto
Ejecutar ----> Ejecutar configuraciones ----> Argumentos
Ingrese -Xmx1g (Se usa para establecer el tamaño máximo como Xmx256m o Xmx1g ...... m -> mb g ---> gb)
fuente
java -d64 -Xms512m -Xmx4g HelloWorld
donde, -d64: habilitará JVM de 64 bits -Xms512m: establecerá el tamaño de almacenamiento dinámico inicial como 512 MB -Xmx4g: establecerá el tamaño de almacenamiento dinámico máximo como 4 GB (aquí el nombre del archivo Java es: HelloWorld.java)
fuente
Puede aumentar el tamaño de almacenamiento dinámico pasando los parámetros JVM -Xms y -Xmx como se muestra a continuación:
Para archivos jar:
Para archivos Java:
Los parámetros anteriores aumentan InitialHeapSize (-Xms) a 4GB (4096 MB) y MaxHeapSize (-Xmx) a 6GB (6144 MB).
Pero, el Tamaño de almacenamiento dinámico de la generación joven seguirá siendo el mismo y el Tamaño de almacenamiento dinámico adicional se agregará al Tamaño del almacenamiento dinámico de generación anterior . Para igualar el tamaño de Young Gen Heap y Old Gen Heap , use -XX: NewRatio = 1 -XX: -UseAdaptiveSizePolicy params.
-XX: NewRatio = Tamaño de montón de generación anterior: Tamaño de pila de generación joven (puede jugar con esta proporción para obtener la proporción deseada).
fuente
Sí tu puedes. De hecho, puede aumentar a más de la cantidad de memoria física, si lo desea.
Si es una buena idea hacer esto depende de cuánto más se esté ejecutando en su sistema. En particular, si el "conjunto de trabajo" de las aplicaciones y servicios que se están ejecutando actualmente excede significativamente la memoria física disponible, su sistema es susceptible de "sacudirse", pasando mucho tiempo moviendo páginas de memoria virtual hacia y desde el disco. El efecto neto es que el sistema se vuelve terriblemente lento.
fuente
Utilice el siguiente comando para cambiar el tamaño de almacenamiento dinámico a 6 GB
fuente
Varias personas señalaron las respuestas específicas para el tamaño del montón con las opciones jvm de
-Xms
y-Xms
. Quiero señalar que este no es el único tipo de opciones de memoria para la jvm. Específicamente, si obtiene una pila sobre flujos, entonces querrá aumentar el tamaño de la pila agregando una opción adicional como-Xss8m
.Para este problema, las opciones jvm de algo así
-Xms2g -Xmx6g -Xss8m
serían una solución.Estoy compartiendo esta información, ya que mis búsquedas en Google sobre cómo aumentar la memoria jvm me llevaron a esta solución, y las soluciones no funcionaron con grandes cantidades de asignación de memoria. Una vez que descubrí para qué eran las configuraciones específicas, pude buscar en Google cómo aumentar el tamaño de la pila y encontré el parámetro faltante. :) Espero que esto ahorre tiempo a otros, como me hubiera ahorrado un montón de tiempo. :)
fuente
Esto solo funciona con la versión de 64 bits de Java. Vaya al Panel de control y haga clic en el icono de Java. En la pequeña ventana del Panel de control de Java, haga clic en la barra de menú de Java y luego haga clic en el
view
botón.Si tiene dos plataformas Java, desactive la versión anterior de Java, luego haga clic en el campo de texto Parámetros de tiempo de ejecución y escriba
-Xmx1024m
o menos que el tamaño de RAM. No aumente el tamaño de almacenamiento dinámico igual a RAM, de lo contrario su sistema se bloqueará.fuente
Si. Usted puede.
Puede aumentar su memoria de almacenamiento dinámico al 75% de la memoria física (almacenamiento dinámico de 6 GB) o superior.
Como está utilizando 64 bits, puede aumentar el tamaño de su montón a la cantidad deseada. En caso de que esté utilizando 32 bits, está limitado a 4 GB.
Establece un tamaño de almacenamiento dinámico inicial de 512 MB y un tamaño de almacenamiento máximo máximo de 6 GB.
Espero eso ayude.. :)
fuente
Tengo problemas para ejecutar los archivos py en mi código java usando eclipse / STS, obteniendo PyException debido a la memoria insuficiente de almacenamiento dinámico jvm. He realizado los cambios como se menciona a continuación y puedo resolver este problema. A continuación se muestra la configuración de mi sistema.
Y estos son los cambios que hice en mi espacio de trabajo y listo, ahora funciona perfecto.
fuente