Compréhension des paramètres de mémoire pour Eclipse
Je viens d'installer Eclipse 4.2 (Juno) sur Linux 64 bits. J'ai regardé plusieurs Eclipse.ini
threads sur Pile Overflow, mais je ne comprends toujours pas la relation entre les différents paramètres de mémoire.
D'une part, il y a des paramètres qui sont pour la VM et qui -vmargs
(par exemple, -Xms
et -Xmx
, -XX
), tandis que d'autres (par exemple, --launcher.XXMaxPermSize
) sont fournis à Eclipse directement.
Quelle est la relation entre ces paramètres? Comment pourrais-je mettre en place pour une machine avec plus de 8 GO de mémoire?
Je suis conscient de la longue Débordement de Pile question Quels sont les meilleurs paramètres de la JVM pour Eclipse?, mais je voudrais apprendre comment ajuster ces paramètres de moi-même.
De référence, après l'installation, les paramètres par défaut que Juno a sont:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.200.v20120522-1813
-product
org.eclipse.epp.package.cpp.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez Eclipse sur un Oracle/Sun JVM, je voudrais mépris
--launcher.XXMaxPermSize
(personnellement, je le supprimer) et de se concentrer sur-XX:MaxPermSize
,-Xms
et-Xmx
.La raison pour
--launcher.XXMaxPermSize
est que certains non-Oracle/Sun Jvm étouffe sur-XX:MaxPermSize
. L'écran de lancement est programmé pour détecter la JVM, et à condition d'approvisionnement-XX:MaxPermSize
. Bien sûr, cela est vaincu par la référence explicite-XX:MaxPermSize
paramètre par défaut dans le eclipse.ini fichier. Qui ressemble à un bug.Je n'ai jamais salir avec
-Xms
réglage. J'ai mis-Xmx1024m
et-XX:MaxPermSize=512m
.Par souci d'exhaustivité, il convient de noter que la génération permanente (PermGen) a été remplacé par MetaSpace dans Java 8 HotSpot.
Donc, si vous êtes en utilisant une JVM Oracle avec Java 8 ou supérieur, vous n'avez pas à vous soucier de ces paramètres plus et peut supprimer en toute sécurité ceux de vous eclipse.ini:
Depuis le
-XX:MaxPermSize
paramètre est ignoré par la JVM et génère un message d'avertissement (Voir: PermGen élimination dans le JDK 8).