552 votes

Quelle est la taille de segment de java par défaut déterminée ?

Si j’ai omettre l’option - Xmxn depuis la ligne de commande java qu'une valeur par défaut est utilisée. Selon la documentation java « la valeur par défaut est choisie lors de l’exécution selon la configuration du système ».

Quels paramètres de configuration du système influencent la valeur par défaut ?

652voto

stones333 Points 1112

Vous pouvez utiliser la commande suivante pour découvrir les valeurs par défaut sur le système où vos applications s’exécute.

Java - XX : + PrintFlagsFinal-version

Recherchez les options (pour ) et pour .

Sur un système Unix/Linux, vous pouvez faire

Java - XX : + PrintFlagsFinal-version | grep HeapSize

130voto

dogbane Points 85749

Selon le Garbage Collector de l'Ergonomie [Oracle]:

initiale de la taille de segment de mémoire:

Plus de 1/64ème de la machine de la mémoire physique de la machine ou de certains minimum raisonnable. Avant de J2SE 5.0, la valeur par défaut initiale de la taille du segment a été un minimum raisonnable, qui varie selon l' la plate-forme. Vous pouvez remplacer cette par défaut à l'aide de l'-Xms ligne de commande option.

taille maximale du tas:

Les petits de 1/4ème de la mémoire physique ou de 1 GO. Avant de J2SE 5.0, le par défaut taille maximale du tas a été de 64 mo. Vous pouvez remplacer cette valeur par défaut à l'aide de l'-Xmx option de ligne de commande.

Mise à JOUR:

Comme l'a souligné Tom Anderson dans son commentaire ci-dessus est pour le serveur-les machines de classe. De l'Ergonomie dans l'5.0 Java Virtual Machine:

Dans la plate-forme J2SE version 5.0 d'un classe de machine appelée un serveur-machine de classe a été définie comme une machine avec

  • 2 ou plusieurs processeurs physiques
  • 2 ou plusieurs giga-Octets de mémoire physique

à l'exception des plates-formes 32 bit fonctionne avec une version de Windows le système d'exploitation. Sur tous les autres les plates-formes les valeurs par défaut sont de même que les valeurs par défaut pour la version 1.4.2.

Dans la plate-forme J2SE version 1.4.2 par par défaut les sélections suivantes ont été fait

  • initiale taille du segment de mémoire de 4 Mo
  • taille maximale du tas de 64 Mo

43voto

ernesto Points 478

Cela est changé avec la mise à jour de java 6 18. http://www.Oracle.com/technetwork/Java/javase/6u18-142093.html

En supposant que nous avons plus de 1 Go de mémoire physique (assez fréquent de nos jours), c’est toujours 1/4 de votre mémoire physique.

16voto

apl Points 49

Ernesto est droit. Selon le lien qu'il a posté [1]:

"Client de mise à jour du segment de la JVM de configuration Dans le Client de la JVM... La valeur par défaut taille maximale du tas est la moitié de la mémoire physique jusqu'à une taille de la mémoire physique de 192 mo et sinon, un quart de la mémoire physique jusqu'à une taille de la mémoire physique de 1 gigaoctet.

Par exemple, si votre machine dispose de 128 mo de mémoire physique, la taille maximale du tas est de 64 mégaoctets, et supérieur ou égal à 1 gigaoctet de mémoire physique résultats d'une taille maximale du tas de 256 méga-octets.

La taille maximale du tas n'est pas réellement utilisé par la JVM, à moins que votre programme crée assez d'objets à l'exiger. Une quantité beaucoup plus petite, appelée l'initiale de la taille du segment, est alloué lors de la JVM de l'initialisation.

...

Serveur segment de la JVM de configuration de l'ergonomie est maintenant le même que le Client, sauf que par défaut la taille maximale du tas de 32 bits Jvm est de 1 gigaoctet, correspondant à la taille de la mémoire physique de 4 giga-octets, et pour la version 64 bits Jvm 32 gigaoctets, correspondant à la taille de la mémoire physique de 128 go."

[1] http://www.oracle.com/technetwork/java/javase/6u18-142093.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X