Récemment, j'ai travaillé sur l'optimisation du code (en temps de calcul et en mémoire max requise). Pour savoir s'il y a un gain potentiel pour optimiser le coût de la mémoire, j'utilise JProfiler. TypiquementComment interpréter le graphique d'activité GC dans JProfiler?
- s'il est élevé, je devrais essayer de réduire globalement
- si elle est hérissée, je devrais essayer de réduire la création d'objet intermédiaire
Maintenant, je suis dans la deuxième situation, et le graphique de l'activité GC montre des pics mais tous sont inférieurs à 2% (voir l'image ci-dessous). Comment dois-je comprendre cela? Par défaut, je crois comprendre que la somme/intégrale de la courbe d'activité GC est une estimation du pourcentage total de cpu utilisé pour collecter des données. Donc, ici, cela signifierait beaucoup moins que le maximum 2%
C'est correct? Est-ce que je manque quelque chose?
pouvez-vous ajouter une image? aussi, si vous voulez une interprétation plus détaillée de l'activité du GC, vous devez activer la journalisation gc et exécuter les choses via [gcviewer] (https://github.com/chewiebug/GCViewer) – the8472
J'ai ajouté une image. Je ne suis pas au courant des fonctionnalités de journalisation de gc, que fait-il? Les journaux gc –
fournissent des statistiques plus détaillées sur les performances générales du GC. jprofiler est plus adapté à l'analyse de graphes d'objets et de sites d'allocation. Par conséquent, si vous voulez avoir une meilleure idée du comportement agrégé, l'interprétation des journaux gc vous donnera plus de visibilité. Si vous voulez savoir ce qui est alloué, alors un profileur est le meilleur choix. – the8472