Exécuter des outils de profilage avec ou sans le débogueur (C#, Visual Basic, C++ et F#)

Visual Studio propose un choix d’outils de mesure et de profilage des performances. Certains outils, tels que Utilisation du processeur et Utilisation de la mémoire, peuvent s’exécuter avec ou sans le débogueur et sur des configurations de builds de mise en production ou débogage. Les outils qui apparaissent dans la fenêtre Outils de diagnostic s’exécutent uniquement pendant une session de débogage. Les outils qui apparaissent dans le Profileur de performances s’exécutent sans le débogueur et vous analysez les résultats après avoir choisi d’arrêter et de collecter des données (pour l’analyse post-mortem).

Notes

Vous pouvez utiliser les outils de performances non intégrés au débogueur avec Windows 7 et ultérieur. Windows 8 ou ultérieur est nécessaire pour exécuter les outils de profilage intégrés au débogueur.

Le Profileur de performances non intégré au débogueur et les Outils de diagnostic intégrés au débogueur fournissent des informations et des expériences différentes. Les outils intégrés au débogueur affichent les valeurs des variables et vous permettent d’utiliser des points d’arrêt. Les outils non intégrés au débogueur offrent des résultats plus proches de l’expérience des utilisateurs finaux.

Pour vous aider à décider quels outils et résultats utiliser, tenez compte des points suivants :

  • Outil intégré au débogueur et outil sans débogueur

    • Les problèmes de performances externes, comme les problèmes de réactivité du réseau ou d’E/S de fichier, se ressembleront dans tous les outils, qu’ils soient intégrés ou non au débogueur.
    • Le débogueur lui-même affecte les durées des performances quand il effectue des opérations de débogage nécessaires telles que l’interception des exceptions et des événements de chargement de module.
    • Les valeurs de performances des builds Mise en production fournies dans le Profileur de performances sont les plus précises. Les résultats fournis par les outils intégrés au débogueur sont plus utiles pour la comparaison avec d’autres mesures liées au débogage ou l’utilisation des fonctionnalités de débogage.
    • Certains outils, tels que l’outil d’allocation d’objets .NET, ne sont disponibles que pour les scénarios sans débogueur.
  • Build de débogage et build de mise en production

    • Pour les problèmes provoqués par des appels nécessitant une utilisation importante du processeur, il peut exister des différences de performances considérables entre les builds de mise en production et de débogage. Vérifiez si le problème existe dans les builds de mise en production.
    • Si le problème se produit uniquement pendant les builds de débogage, vous n’avez probablement pas besoin d’exécuter les outils sans débogueur. Pour les problèmes de build de mise en production, déterminez si les fonctionnalités fournies par les outils intégrés au débogueur aideront à identifier le problème.
    • Les builds Release fournissent certaines optimisations comme l’incorporation des constantes et des appels de fonction, le nettoyage des chemins de code inutilisés ou encore des modes de stockage de variables inutilisables par le débogueur. Les valeurs de performances mentionnées dans les builds de débogage sont moins précises, car les builds de débogage n’offrent pas ces optimisations.

Collecter les données de profilage sans débogage

Pour recueillir des données de performances sans débogage, vous pouvez exécuter les outils du Profileur de performances.

  1. Avec un projet ouvert dans Visual Studio, définissez la configuration de la solution sur Mise en production et sélectionnez Débogueur Windows local (ou Ordinateur local) comme cible de déploiement.

  2. Sélectionnez Déboguer>Profileur de performances ou appuyez sur Alt+F2.

  3. Dans la page de lancement des outils de diagnostic, sélectionnez un ou plusieurs outils à exécuter. Seuls les outils applicables au type de projet, au système d’exploitation et au langage de programmation sont affichés. Sélectionnez Afficher tous les outils pour voir aussi les outils qui sont désactivés pour cette session de diagnostic.

    Capture d’écran des outils de diagnostic.

    Capture d’écran des outils de diagnostic.

  4. Pour démarrer la session de diagnostic, sélectionnez Démarrer.

    Pendant l’exécution de la session, certains outils affichent des graphes de données en temps réel dans la page des outils de diagnostic, et peuvent afficher des options permettant de suspendre et de reprendre la collecte de données.

    Capture d’écran de la collecte de données sur le Profileur de performances.

    Capture d’écran de la collecte de données sur le Profileur de performances.

  5. Pour terminer la session de diagnostic, sélectionnez Arrêter la collecte.

    Les données analysées apparaissent dans la page Rapport.

Vous pouvez enregistrer les rapports et les ouvrir à partir de la liste Sessions récemment ouvertes dans la page de lancement des Outils de diagnostic.

Capture d’écran de la liste des Sessions récemment ouvertes des Outils de diagnostic.

Capture d’écran de la liste des Sessions récemment ouvertes des Outils de diagnostic.

Pour plus d'informations, consultez les pages suivantes :

Collecter les données de profilage pendant le débogage

Quand vous démarrez le débogage dans Visual Studio en sélectionnant Déboguer>Démarrer le débogage ou en appuyant sur F5, la fenêtre Outils de diagnostic s’affiche par défaut. Pour l’ouvrir manuellement, sélectionnez Déboguer>Fenêtres>Afficher les Outils de diagnostic. La fenêtre Outils de diagnostic affiche des informations sur les événements, la mémoire de traitement, l’utilisation du processeur et les compteurs .NET.

Capture d’écran de la fenêtre Outils de diagnostic.

Quand vous démarrez le débogage dans Visual Studio en sélectionnant Déboguer>Démarrer le débogage ou en appuyant sur F5, la fenêtre Outils de diagnostic s’affiche par défaut. Pour l’ouvrir manuellement, sélectionnez Déboguer>Fenêtres>Afficher les Outils de diagnostic. La fenêtre Outils de diagnostic affiche des informations sur l’utilisation du processeur, la mémoire de traitement et les événements.

Capture d’écran de la fenêtre Outils de diagnostic

  • Utilisez l’icône Paramètres dans la barre d’outils pour sélectionner si vous souhaitez afficher Utilisation de la mémoire, Analyse de l’IU ou Utilisation de l’UC.

  • Sélectionnez Paramètres dans la liste déroulante Paramètres pour ouvrir les Pages de propriétés des Outils de diagnostic avec davantage d’options.

  • Si vous exécutez Visual Studio Enterprise, vous pouvez activer ou désactiver IntelliTrace dans Outils>Options>IntelliTrace.

La session de diagnostic se termine quand vous arrêtez le débogage.

Notes

Utilisez le nouveau lancement pour ignorer la page de lancement et exécuter automatiquement avec vos paramètres précédents en appuyant sur Alt+F2 ou en cliquant sur Déboguer > Profileur de performances.

Pour plus d'informations, consultez les pages suivantes :

Onglet Événements

Pendant une session de débogage, l’onglet Événements de la fenêtre Outils de diagnostic liste les événements de diagnostic qui se produisent. Les préfixes de catégories Point d’arrêt, Fichier et autres vous permettent de trouver rapidement la catégorie qui vous intéresse dans la liste, ou d’ignorer celles qui ne vous intéressent pas.

Utilisez la liste déroulante Filtre pour filtrer les événements en sélectionnant ou en désélectionnant des catégories d’événements spécifiques.

Capture d’écran du filtre d’Événement de diagnostic.

Capture d’écran du filtre d’Événement de diagnostic

Utilisez la zone de recherche pour trouver une chaîne spécifique dans la liste des événements. Voici les résultats d’une recherche pour le nom de fichier model où une correspondance a été établie avec trois événements :

Capture d’écran de la recherche d’Événement de diagnostic.

Utilisez la zone de recherche pour trouver une chaîne spécifique dans la liste des événements. Voici les résultats de recherche de la chaîne nom correspondant à quatre événements :

Capture d’écran de la recherche d’Événement de diagnostic

Pour plus d’informations, consultez Searching and filtering the Events tab of the Diagnostic Tools window.

Collecter des données de profilage à la partir de la ligne de commande

Pour mesurer les données de performances à partir de la ligne de commande, vous pouvez utiliser VSDiagnostics.exe, qui est inclus dans Visual Studio ou les Outils de contrôle à distance. Cela est utile pour capturer des traces de performances sur des systèmes sur lesquels Visual Studio n’est pas installé, ou pour générer des scripts pour la collection de traces de performances. Pour obtenir des instructions détaillées, consultez Mesurer les performances de l’application à partir de la ligne de commande.