• Aucun résultat trouvé

Visualisation d’une trace

CHAPITRE 2 REVUE DE LITT´ ERATURE

2.3 Visualisation d’une trace

Maintenant que nous avons vu comment recueillir une trace et comment stocker les in- formations pertinentes pour l’utilisateur, nous allons nous int´eresser dans cette partie aux diff´erentes mani`eres de repr´esenter graphiquement le contenu d’une trace.

Actuellement, plusieurs outils permettent de visualiser et d’analyser des traces. Nous allons d´etailler les principales formes de visualisation existantes.

2.3.1 Visualisation brute

Nous avons vu dans la partie sur les traceurs qu’il est possible de lire une trace en mode texte. Des logiciels tels que Babeltrace permettent d’afficher en console le contenu de la trace. Il existe ´egalement un outil permettant de visualiser en mode texte les informations d’un mod`ele `a ´etats dans TMF (voir Montplaisir et al., 2013). Cet outil, pr´esent´e `a la Figure 2.4, permet d’afficher `a un temps choisi le contenu complet de l’arbre des attributs du mod`ele `a ´

etats.

En plus de l’information contenue dans l’attribut, on obtient les d´etails complets de l’´etat, `

a savoir son d´ebut, sa fin et sa valeur. Cette vue permet ´egalement de filtrer pour afficher uniquement les changements d’´etat ayant eu lieu `a l’instant affich´e. Nous connaissons alors l’impact d’un ´ev´enement sur le mod`ele, ce qui facilite sa validation.

2.3.2 Les diagrammes de Gantt

L’une des vues les plus courantes pour repr´esenter l’ordonnancement et les ressources est le diagramme de Gantt. Issu de la gestion de projet, ce type de diagramme permet de visualiser efficacement dans le temps les diverses “tˆaches” d’un projet.

Dans notre contexte, ce diagramme est utilis´e pour afficher l’´etat d’une liste d’attributs caract´eristiques du syst`eme trac´e. Avec le logiciel TMF, cette vue est fortement corr´el´ee avec le contenu du gestionnaire d’´etat, ce qui permet d’avoir des vitesses d’affichage optimales car il n’y a plus d’information suppl´ementaire `a calculer.

La plupart des logiciels proposent ce type de vue. La Figure 2.5 montre l’utilisation qui en est faite par le visualiseur d´evelopp´e par Microsoft pour lire des traces ETW. Cette vue permet ici de repr´esenter l’activit´e des processus et l’utilisation du disque dur.

Figure 2.5 Logiciel de visualisation de Windows Performance Analyzer.

Le logiciel Jumpshot permet d’utiliser cette mˆeme repr´esentation pour afficher directement les ´etats contenus dans la trace (voir Chan et al., 2008) . L’utilisation principale de ce logiciel est de pouvoir analyser des ex´ecutions de programmes utilisant la librairie MPI (voir Zaki et al., 1999; Gropp et al., 1999).

Des recherches au niveau de l’abstraction des donn´ees pour r´eduire le nombre d’´etats affich´es ont ´et´e r´ealis´ees par Ezzati-Jivan et Dagenais (2012). Suivant le principe qui est mis en place pour l’affichage de labels pour les donn´ees g´eographiques, il est propos´e dans cette solution d’afficher des ´etats synth´etiques regroupant plusieurs ´etats, pour augmenter la

lisibilit´e suivant le niveau de zoom de la vue. Ainsi, par exemple, les ´etapes pour faire une requˆete Internet vers un serveur http peuvent ˆetre vues au plus bas niveau comme l’ensemble des ´etats requˆete DNS, ´etablissement de la connexion TCP, envoie de la requˆete HTTP. On peut ensuite les regrouper `a plus haut niveau comme un seul ´etat connexion HTTP.

2.3.3 Graphiques

Les graphiques fonctionnels sont un second moyen de visualiser des donn´ees de fa¸con synth´etique en fonction du temps. Le plus souvent, ces graphiques utilisent le temps comme abscisse et permettent donc de repr´esenter l’´evolution d’un param`etre, c’est-`a-dire un attribut. Il existe plusieurs repr´esentations ´equivalentes parmi lesquelles les courbes, les histogrammes ou encore les diagrammes `a barres.

TMF et Jumpshot offrent une vue en histogramme pour montrer la densit´e d’une informa- tion, comme le nombre d’´ev´enements. Une vue utilisant une courbe est ´egalement disponible pour afficher la consommation m´emoire durant le temps d’ex´ecution.

2.3.4 Graphes de relations

Un nouveau moyen d’explorer le contenu d’une trace est l’utilisation de graphes pour mettre en relation les donn´ees de fa¸con structur´ee. Le logiciel d’analyse Triva6 de l’INRIA

permet de visualiser de fa¸con interactive des traces d’ex´ecution d’applications parall`eles (voir Schnorr et al., 2010). Le logiciel utilise les messages de synchronisation entre les diff´erents fils d’ex´ecutions parall`eles pour construire un graphe `a trois dimensions. Les deux dimensions du plan sont utilis´ees pour ´etablir le graphe, puis la troisi`eme permet d’ajouter la dimension temporelle. Il pr´esente la fa¸con de passer d’une vue de Gantt `a cette repr´esentation.

Ce graphe permet d’avoir les mˆemes informations que le diagramme de Gantt. Cependant, elle ajoute un niveau suppl´ementaire de visibilit´e pour l’utilisateur en pr´esentant diff´eremment les interactions entre les attributs, i.e. les lignes du pr´ec´edent diagramme de Gantt.

2.3.5 Statistiques

Une autre fa¸con de repr´esenter les donn´ees d’une trace est de g´en´erer une table de sta- tistiques. Cette approche est utilis´ee pour l’analyseur de performances de base de Windows (sans le Windows Performance Toolkit). Il fournit un grand nombre de m´etriques issues des compteurs de performance et des points de trace du noyau. Ces donn´ees comportent sou- vent une dimension temporelle incluse, comme une fr´equence. Elles sont fournies avec une moyenne, un minimum et un maximum. On y retrouve notamment :

– le nombre d’interruptions par seconde des processeurs, – le nombre de fautes de pages par seconde,

– le nombre d’octets lus et ´ecrits sur disque par seconde, – les fichiers les plus utilis´es,

– le pourcentage de temps pass´e en utilisateur ou en appel syst`eme, – le nombre d’octets ´emis et re¸cus du r´eseau...

Une autre forme de statistiques possible est l’utilisation d’une trace pour g´en´erer l’´equi- valent du programme top7 sous Linux. Ce programme permet d’afficher les processus s’ex´e-

cutant actuellement sur les processeurs ainsi que les ressources qui lui sont allou´ees (quantit´e de m´emoire, pourcentage du CPU...). Le logiciel lttngTop de la suite des outils de LTTng offre les mˆemes fonctionnalit´es en utilisant les informations recueillies par une trace noyau LTTng (voir Desfossez, 2011). Des mises `a jours r´ecentes permettent d’utiliser ce logiciel en direct (live mode) et sur le r´eseau.

Si la repr´esentation de statistiques `a l’aide d’un tableau semble la plus ´evidente, Triva permet ´egalement de repr´esenter des donn´ees sous la forme d’un graphique de type treemap (voir Schnorr et al., 2009).

Une ´etude sur la fa¸con de calculer des statistiques `a partir de grands fichiers de traces a ´

et´e faite par Ezzati-Jivan et Dagenais (2013). Cette ´etude met l’emphase sur l’efficacit´e pour cr´eer la structure de stockage de l’information de statistiques et sur la rapidit´e des requˆetes dans cette structure.

Documents relatifs