Share via


Profiling des applications avec Team System 2008

Une des fonctionnalités les plus intéressantes de Visual Studio Team Developer est le profiling d’application. Cette fonctionnalité a été améliorée pour l’édition 2008. Elle reste cependant assez méconnue.

Nous allons passer en revue les fonctionnalités de profiling.

Les contextes d’utilisation sont les suivants :

Connaître les performances et l’ensemble des appels de ses sites Web, de ses applications client riche, de ses tests unitaires, de ses tests de performances, savoir exactement comment s’exécute les applications, les allocations mémoire, le fonctionnement du Garbage Collector, le nombre d’objets instanciés…

Les fonctionnalités sont disponibles pour le C++ natif et pour les langages managés : C#, VB.Net et C++.

· Profiling de site Web

On peut associer le profiler au test d’un site Web. Toutes les actions sur l’interface seront tracées par le profiler.

· Résumé sur la première page

Après une analyse la première page affiche les résultats et donne les grandes tendances, les fonctions qui ont consommées le plus de mémoire…

· Analyse possible jusqu’à la ligne de code

On peut poursuivre l’analyse jusqu’aux lignes de code pour connaître les fonctions qui sont les plus lentes.

· Extraction des informations

Toutes les informations sont exportables par copier/coller ou par les menus dans Excel ou au format csv ou xml.

· Comparaison de rapports

En version 2008, il est maintenant possible de comparer des rapports pour s’assurer de la pertinence des modifications.

Florent Santin de Winwise décrit dans un post le fonctionnement de la comparaison de sessions.

https://blogs.developpeur.org/azra/archive/2007/10/23/vs-2008-profiling-comparaison-de-deux-rapports.aspx

· Hot Path

C’est une fonctionnalité très intéressante pour connaître le chemin critique au niveau des performances de l’application et pointer directement sur les problèmes.

· Mémoire en .Net

Pour les langages de .Net, on peut connaître le nombre d’instances allouées des objets et leur taille en mémoire, si elles sont désallouées en quittant l’application…

· Filtre sur les compteurs CPU, IIS et autres

Tous les compteurs des machines peuvent être récupérés par le profiler. La capture d’écran ci-dessous montre les compteurs suivants : « \Memory », « \Physical Disk) » et « \Processor) ».

· Profiling sur machine 64-bit supporté

Le titre est explicite.

· Exécution en ligne de commande

Il est possible d’exécuter les fonctionnalités en ligne de commande.

· Data Collection profiling

C’est la possibilité de définir des marques temporelles lors de l’exécution de l’application pour filtrer plus simplement les données à analyser entre les marques.

Certaines marques sont automatiquement créées pour nous aider. La capture d’écran dans le paragraphe « Filtre sur les compteurs CPU… » présente les valeurs d’un certain nombre de ces compteurs.

 

Pour en savoir plus, si vous souhaitez maintenant utiliser le profiler, voici le lien vers une vidéo (en anglais) de 50 minutes qui a été enregistrée lors du TEchEd d’Orlando en juin dernier :

https://msdn.microsoft.com/vstudio/media/en/vs2008/DEV313.wvx

Elle présente l’ensemble des fonctionnalités un peu plus en détail.