Lors de l'EclipseCon 2015, Zero Turnaround (les créateurs de JRebel, l'outil populaire qui élimine les redéploiements en Java) a livré l'Optimizer pour Eclipse. L'optimiseur est une interface utilisateur auto-guidée pour ajuster les paramètres de JVM afin d'améliorer la performance. Lorsqu'il est installé depuis le Marketplace Eclipse, un ensemble guidé d'étapes demande à l'utilisateur s'il doit ajuster les paramètres mémoire et d'autres indicateurs relatifs à la performance dans les arguments de démarrage de la JVM, ce qui provoque une amélioration du lancement de l'application.
Au démarrage, Eclipse charge une quantité de classes et par défaut, exécutera la vérification du bytecode de la JVM, ce qui peut ajouter un temps de chargement supplémentaire. Le vérificateur de bytecode est désactivé par l'ajout de -Xverify:none
aux arguments de JVM, diminuant ainsi le temps de chargement.
De plus, si l'ordinateur est multi-coeurs, les indicateurs -server
et -XX:+UseParallelGC
sont ajoutés, ce qui peut respectivement créer un code plus rapide en exécutant le JIT en avance et utiliser un ramasse-miettes parallèle qui améliore les performances mémoire de l'application.
Enfin, si la JVM et l'ordinateur le supportent, les paramètres mémoire (en particulier, la taille initiale de la pile et sa taille maximum) sont augmentés avec le +XX:PermSize
(ce qui est valide pour Java 7 et moins).
Après le redémarrage, l'instance d'Eclipse affiche un écran d'accueil qui indique combien de temps est économisé lorsque Eclipse démarre avec les nouveaux paramètres :
L'optimiseur peut également être utilisé pour nettoyer quelques méta-données et logs (de la même manière que la suppression de l'historique dans un navigateur), ce qui peut rendre Eclipse plus rapide. Chaque option est incorporée dans le menu de telle sorte que ces changements puissent être appliqués de manière sélective.
Sous le capot, ces changements sont appliqués au fichier eclipse.ini
et peuvent être annulés si nécessaire.
Une démonstration vidéo montrant l'utilisation de l'outil est disponible ici.