Test de ANTS Profiler (Red-Gate)

Didier Danse

N'hésitez pas à commenter cet article ! Commentez ♪

- Titre : Test de ANTS Profiler (Red-Gate)

- Auteur : Didier Danse

- Parution : 11 novembre 2005

- Mise à jour : 11 novembre 2005

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2005 Danse Didier. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Présentation

- I-A. Site officiel

- I-B. L'utilitaire testé

- II. Installation

- III. Types d'applications qui peuvent être analysées

- IV. Type de profilers

- IV-A. Performance (Vitesse d'exécution)

- IV-A-1. Filtres sur les analyses

- IV-A-2. Rapports d'analyse

- IV-A-3. Exportation en .html

- IV-B. Mémoire

- IV-B-1. Snapshots

- IV-B-2. Rapports d'analyse

- IV-B-3. Exportation en .html

- V. Sauvegarde des projets et des résultats

- VI. Conclusion

- VI-A. Pour qui?

- VI-B. Le prix

- VI-C. L'anecdote

I - Présentation

La société Red-Gate nous a proposé de réaliser le test de plusieurs de ses applications.

Voici dès lors le premier des nombreux tests que vous pourrez découvrir dans les prochaines semaines.

I-A - Site officiel

Site officiel de ANTS Profiler (Red-Gate softwares)

I-B - L'utilitaire testé

Le premier utilitaire testé est ANTS Profiler. Celui-ci a pour but de permettre au développeur de déterminer les points qui peuvent être améliorés dans leurs applications utilisant les frameworks .NET.

Effectivement, la version utilisée dans ce test, la 2.6, supporte aussi bien le framework .NET 1.x que le 2.0.

Il fonctionne de manière totalement indépendante. Il n'est donc aucunement nécessaire de posséder Visual Studio ou tout autre logiciel.

II - Installation

Le programme d'installation est téléchargeable sur Internet sur le site officiel de ANTS Profiler (Red-Gate softwares). Celui-ci est relativement petit puisqu'il ne fait que 6Mo environ.

Si il fallait résumer l'installation de ANTS Profiler, nous pourrions dire qu'il s'agit d'une installation à la « next, next, next ». En clair, nous sommes face à un assistant d'installation comme nous en avons l'habitude d'en voir. Le premier test est donc concluant puisqu'il est simple et sans encombre.

III - Types d'applications qui peuvent être analysées

Comme on peut le voir sur l'image suivante, plusieurs types d'applications peuvent être analysées.

Il s'agit de :
- applications Windows .NET ;
- applications web .NET ;
- services .NET ;
- applications serveur COM+ .

Par exemple, dans le cas des applications web, ANTS Profiler arrête le serveur IIS avant de le redémarrer. Cela permet ainsi à ANTS Profiler de réaliser les différentes analyses.

IV - Type de profilers

ANTS Profiler permet d'effectuer plusieurs types d'analyses. Ainsi, il est possible d'analyse les performances d'une application, mais également l'utilisation de la mémoire grâce à cet utilitaire.

IV-A - Performance (Vitesse d'exécution)

La première partie de l'application permet de réaliser une analyse de performances. Ainsi, il est possible d'utiliser vos applications comme vous le faites habituellement et ensuite de voir le temps nécessaire aux différentes méthodes appelées par votre application.

IV-A-1 - Filtres sur les analyses

L'application est capable de distinguer les méthodes dont le code source est disponible et les autres (par exemple les méthodes des espaces de nom de base). Ainsi, il est possible de n'afficher que les méthodes développées expressément.

Par ailleurs, lorsque le code est disponible, il est affiché tel que le développeur l'a écrit, ce qui est très avantageux pour le développeur qui réalise les analyses.

IV-A-2 - Rapports d'analyse

Les résultats peuvent être affichés sous forme de résumé. Ce résumé comprend divers éléments :

- les lignes de code les plus longues à être exécutées

- les méthodes qui ont pris le plus de temps

- le détail du temps nécessaire par ligne de code

Sur ce dernier exemple, on voit que c'est l'ouverture de la connexion qui prend le plus de temps. Il peut être possible d'améliorer l'application en réduisant le nombre d'ouvertures/fermetures de la connexion.

Par ailleurs, le « new SqlParameter » qui n'est pas indispensable prend également du temps. On pourrait par exemple, dans le but de diminuer le temps nécessaire à l'exécution, utiliser le .Parameters directement au lieu de créer un tel objet.

IV-A-3 - Exportation en .html

IV-B - Mémoire

IV-B-1 - Snapshots

La vie des objets est gérée par le framework .NET, là je n'apprends rien à la majorité d'entre vous. La destruction des éléments se fait au fur et à mesure des besoins en mémoire par le framework. Ainsi, il est préférable d'utiliser des images de la mémoire à un instant donné. Cet utilitaire permet de réaliser ces « images ». Ces « images » sont très simples à prendre grâce à un simple bouton :

Concrètement, les snapshots permettent de comparer l'état de la mémoire à différents moments de la vie de l'application.

IV-B-2 - Rapports d'analyse

Comme on peut le voir sur l'exemple suivant, on imagine très peu le nombre d'objets qui ont été créés durant la durée de vie d'une application (plus de 43000 dans ce cas).

Il est ainsi possible d'avoir un résumé (image précédente) ou encore le détail par objet.

IV-B-3 - Exportation en .html

Pour afficher les informations, il est possible d'exporter les résultats en xml ou en html. On le voit sur les deux captures d'écran suivantes :

V - Sauvegarde des projets et des résultats

Les différents résultats peuvent être enregistrés afin d'être utilisés plus tard.

VI - Conclusion

VI-A - Pour qui?

Que vous soyez débutant ou confirmé dans le domaine de l'analyse des performances, vous trouvez une utilité à cet utilitaire.

Effectivement, en tant que débutant, vous accédez directement et facilement aux différents résultats. Pour les confirmés, l'utilitaire convient tout autant puisque certains résultats plus « complexes » sont disponibles dans les différents rapports.

VI-B - Le prix

Certes, cet utilitaire n'est pas gratuit… mais comparé au coût de développement et de tests supplémentaires, il peut paraître bon marché.

VI-C - L'anecdote

On notera tout de même que Red-Gate est très en avance sur ses concurrents puisque, selon l'écran d'accueil de l'application, elle est développée depuis 1999 et ce jusqu'en … 2006 :-)