2010-02-22 3 views
3

Je me demandais simplement si l'activation de la GC verbeuse aurait un effet sur les performances d'une application.Java -verbose: gc Implications de performance?

Ma conjecture n'est pas vraiment.

Je sais que l'activation du GC prolixe peut produire un nombre de bits correct et je me demandais si cela allait vraiment avoir un effet sur les performances?

+0

Peut-on avoir plus de contexte? Dans quel type d'application et d'environnement envisagez-vous d'activer cette option? Je suggère de ne pas l'allumer pour le simple plaisir d'un système de production de grande entreprise. –

Répondre

5

Tout ce qui est généré dans le fichier/la console entraînera une surcharge d'E/S. Le fait d'ajouter une latence de ms supplémentaire à chaque événement de récupération de place pourrait certainement avoir un effet sur les performances. Cependant, d'un point de vue réaliste, votre application devrait passer par beaucoup d'entre eux et être soumise à une charge importante avant que vous ne le remarquiez. C'est très difficile à dire sans test.

0

Voici quelques références de performance d'IBM. Les deux indiquent que, dans leurs scénarios de référence, que les frais généraux de prolixes était assez minuscule: sur IBM

Ceci est, bien sûr JVM, donc les résultats peuvent différer pour Hotspot. Cependant, comme pour IBM JVM, la plupart des métriques écrites dans le journal sont probablement calculées en interne pour des raisons d'optimisation, de sorte que la seule surcharge supplémentaire serait l'écriture des données déjà calculées dans le journal. Donc, comme WDS l'a dit, vous devriez collecter avec une fréquence incroyable avant que les frais généraux commencent à faire une brèche significative dans votre performance globale.