Spécification des critères de profilage
Le profilage d'une application nécessite la sélection d'un ou de plusieurs
types d'analyse dans le collecteur de données Profilage Java. Les collecteurs de données
spécifient le mode de collecte des données préconisé et les types d'analyse indiquent les
types de données à collecter. Les filtres permettent de ne transmettre aux vues que les
détails appropriés. L'utilisation des filtres est particulièrement utile lorsque la vitesse et l'efficacité sont cruciales : plus la quantité des données est faible, moins elles ont d'incidence sur le système et plus la vitesse de collecte est élevée.
Prérequis :
La configuration des critères de profilage d'une application est divisée en trois
étapes, indiquées ci-dessous :
- Dans votre configuration de profilage, sélectionnez l'onglet Moniteur.
- La sous-fenêtre de l'arborescence affiche les collecteurs de données à la racine
et les types d'analyse en tant qu'enfants du collecteur de données. Développez le
collecteur de données 'Profilage Java' et notez les types d'analyse affichés dessous
(par exemple : 'Analyse de base de la mémoire', 'Analyse de la durée d'exécution',
etc.).
Sélectionnez les types d'analyse qui vous intéressent sous le
collecteur de données 'Profilage Java'. Attention au nombre de types d'analyse
sélectionnés : la sélection d'un trop grand nombre de types d'analyse inutiles
freine considérablement les performances de l'application. Reportez-vous au tableau ci-dessous pour savoir quels types de profilage activer pour générer des vues différentes et les applications possibles pour chaque type de profilage. La définition des options est décrite dans la section suivante.
Type d'analyse |
Options sélectionnées |
Vues disponibles |
Application |
Analyse de la mémoire |
N/A |
Vue
Statistiques de la mémoire (package, classe, méthode), Vue Références d'objets* |
Analyse
des fuites de mémoire, Identification
des classes consommant une quantité de mémoire importante |
Analyse de la mémoire |
Case à cocher Avancé >> Informations
de niveau instance sélectionnée |
Vue Statistiques de la mémoire (package, classe, méthode, instance),
Vue Références d'objets* |
Analyse
des fuites de mémoire, Etude de
la récupération de place |
Analyse de la durée |
Affiche les statistiques d'exécution (données compressées) |
Statistiques
d'exécution (package, classe, méthode), Statistiques de couverture |
Affichage des appels d'une méthode |
Analyse de la durée |
Affichage des statistiques d'exécution (données
compressées), Avancé >> Collecter les informations de niveau instance |
Statistiques
d'exécution (package, classe, méthode, instance), Statistiques de couverture |
Affichage des statistiques relatives aux packages, classes et méthodes pour chaque instance, Affichage des appels d'une méthode |
Analyse de la durée |
Affiche les détails graphiques de l'exécution |
Statistiques
d'exécution (package, classe, méthode), Statistiques de couverture, Vue Flux d'exécution, Vues des diagrammes de séquence UML2
(objet,classe, unité d'exécution) |
Identification des unités d'exécution actives, Identification des phases d'exécution du programme |
Analyse de la durée |
Afficher les détails graphiques de l'exécution,
Avancé >> Collecter les informations de niveau instance |
Statistiques
d'exécution (package, classe, méthode, instance), Statistiques de couverture, Vue Références d'objets*, Vue Flux d'exécution, Vues des diagrammes de séquence UML2
(objet,classe, unité d'exécution) |
Identification des unités d'exécution actives, Identification des phases d'exécution du programme |
Couverture du code |
N/A |
Statistiques
de couverture (package, classe, méthode) |
Visualisation de la couverture du code |
* Remarque : Pour la vue Références d'objets, vous devez collecter les
références d'objets en appelant l'action Collecter les références d'objets
pour visualiser les données de profilage utilisant cette vue.
Vous pouvez invoquer l'option Collecter les références d'objets à partir de la barre d'outils de la vue Moniteur de profilage ou en cliquant avec le bouton droit de la souris sur l'agent dans la vue Moniteur de profilage.
Vous pouvez définir les options de profilage par le collecteur de données Profilage Java
ou les types d'analyse sélectionnés en mettant en évidence l'entité et en cliquant sur
Edition des options.
Pour définir les options de profilage sur le collecteur de données Profilage Java, procédez comme suit :
- Mettez en évidence Profilage Java et cliquez sur Edition des options
- Sur la page Jeu de filtres, spécifiez le jeu de filtres à appliquer en le sélectionnant dans la liste Sélectionner un jeu de filtres. Vous pouvez
utiliser le jeu Par défaut.
- Sous Contenu du jeu de filtres sélectionné, cliquez sur Ajouter pour
ajouter les packages dont vous voulez collecter les données. La boîte de dialogue Ajout d'un filtre s'affiche. Vous pouvez utiliser un astérisque * comme caractère générique dans un modèle lors de l'indication des noms de packages ou de méthodes.
Remarque 1. Lorsque vous attribuez un modèle au nom de package ou de méthode, vous avez le choix entre 3 modèles :
- Un modèle sans caractère générique. Ex. : org.eclipse.tptp.
- Un modèle doté d'un caractère générique au début. Ex : *.sample.myapplication.
- Un modèle avec un caractère générique à la fin. Ex. : org.eclipse.*.
Remarque 2. Certaines classes seront toujours visibles dan les vues de profilage, quels que soient les paramètres du filtre. L'agent de profilage collectera
toujours les données des objets ou des classes associés à la tâche examinée lors de la
collecte des données spécifiques à cette tâche. Vous pouvez, par exemple, spécifier un filtre pour la collecte des données d'une classe
(MaClasseUtilisateurs) et un autre filtre pour exclure les classes
java.lang.*.Lorsqu'une instance de MaClasseUtilisateurs est chargée, la
définition de classe associée est également chargée. Cette définition de classe est
associée à un objet de classe de type java.lang.Class.Les données sont donc
collectées pour l'objet java.lang.Class et la classe MaClasseUtilisateurs.
Ce comportement s'applique également aux unités d'exécution. La classe
java.lang.Thread est toujours affichée dans les vues de profilage, car
l'agent de profilage recherche toutes les unités d'exécutions actives et collecte
par conséquent les données des objets ou des classes associées à ces unités d'exécution.
Ce comportement s'applique également aux unités d'exécution. La classe
java.lang.Thread est toujours affichée dans les vues de profilage, car
l'agent de profilage recherche toutes les unités d'exécutions actives et collecte
par conséquent les données des objets ou des classes associées à ces unités d'exécution.
- Spécifiez le package ou la classe, le nom de la méthode, puis
sélectionnez Inclure dans la liste déroulante Règle.
- Cliquez sur OK. Les critères de filtre sont ajoutés à la liste de contenu.
- Pour exclure d'autres packages de la liste de contenu des filtres, cliquez sur
Inclure sous la colonne Règle du package et remplacez cette valeur par
Exclure.
- Cliquez sur Suivant.
- Pour limiter la quantité de données collectées par appel de méthode,
cochez la case Arrêter le profilage après le nombre d'appels de méthodes indiqué. Spécifiez
le nombre d'appels de méthode dans la zone de saisie qui s'affiche.
- Pour limiter la quantité de données collectée par délai, cochez la case
Arrêter le profilage après le délai indiqué. Spécifiez le délai en secondes dans la zone de saisie qui s'affiche.
- Pour démarrer l'agent de profilage en mode pause de sorte à ce que les données
ne soient pas collectées lors de l'étape d'initialisation de l'application,
désélectionnez la case à cocher Lancer automatiquement la surveillance
lors du lancement de l'application. Il est fortement recommandé d'utiliser
cette option dans le cas d'applications volumineuses n'ayant pas besoin d'être contrôlées
lors de la phase d'initialisation (par exemple le lancement d'une instance du plan de travail).
- Cliquez sur Terminer
- Cliquez sur Appliquer pour sauvegarder les modifications.
De la même manière, vous pouvez définir les options d'un type d'analyse en le mettant en évidence
et en sélectionnant Edition des options.
Vous pouvez spécifier le projet et le moniteur à utiliser pour votre session de
profilage. Vous pouvez également enregistrer les données de profilage dans un fichier.
- Dans votre configuration de profilage, sélectionnez l'onglet Destination.
- Spécifiez le projet de profilage à utiliser pour votre session de profilage.
- Spécifiez le moniteur à utiliser.
- Pour sauvegarder les données de profilage dans un fichier, sélectionnez l'option
Envoyer les données de profilage dans un fichier et spécifiez le nom du fichier
dans la zone de saisie Fichier de profilage.
- Cliquez sur Appliquer pour sauvegarder les modifications.
- Cliquez sur Profil pour démarrer le profilage de votre application.
Conseil : Lors du filtrage, seul le premier filtre applicable est appliqué. Lorsque vous spécifiez des filtres, assurez-vous de déclarer d'abord les
critères de filtre les plus spécifiques.
Concepts connexes
Présentation de l'outil de profilage
Tâches connexes
Profilage d'une application
Définition des préférences de profilage
(C) Copyright IBM Corporation 2000, 2006. All Rights Reserved. (C) Copyright IBM France 2000, 2006. Tous droits réservés.