Guide du débutant en profilage des performances
Cette rubrique décrit une méthode de base pour l'utilisation des outils de profilage de Visual Studio Premium ou Visual Studio Ultimate pour analyser les problèmes de performances de votre application.Bien que les outils de profilage fournissent de nombreuses options pour rassembler des données de performance personnalisées dans de nombreux genres d'applications, cette rubrique traite de l'utilisation de l'Assistant Profilage pour rassembler des données d'Échantillonnage pour une solution Visual Studio.
[!REMARQUE]
Si l'Échantillonnage ne vous donne pas les données dont vous avez besoin, d'autres méthodes de collection des outils de profilage fournissent d'autres genres d'informations qui peuvent vous être utiles.Pour plus d'informations sur ces autres méthodes, consultez Comment : choisir des méthodes de collection.
Dans cette rubrique
Concepts de base
Composants requis
Étape 1 : créer et exécuter une session de performance
Étape 2 : analyser les données d'échantillonnage
Étape 3 : réviser le code et réexécuter le profileur
Concepts de base
Session de performance Lorsque vous utilisez le profileur de performance, vous créez une session de performance, qui contient les données de configuration pour la collecte des informations de performance et les résultats d'une ou de plusieurs exécutions de profilage.Une fois que vous avez créé une session de performance, cette dernière s'affiche dans la fenêtre Explorateur de performances.
Nom de la session de profilage.
Le dossier Cibles affiche les projets ou les binaires profilés dans la session.
Le dossier Rapports contient les fichiers de données de profilage d'une ou de plusieurs exécutions de collection.Vous pouvez cliquer sur un nom de fichier et sélectionner des vues d'informations de performance telles que les appels de fonctions, les allocations de mémoire et les détails de fonctions spécifiques.Les vues sont affichées dans la fenêtre principale de Visual Studio.
Méthode d'échantillonnage L'échantillonnage est une méthode de profilage statistique qui vous montre les fonctions permettant d'effectuer la majeure partie du travail de mode utilisateur dans l'application.L'échantillonnage est un bon point de départ pour rechercher des pistes pour accélérer votre application.
À des intervalles spécifiés, la méthode d'Échantillonnage collecte les informations sur les fonctions qui s'exécutent dans votre application.Une fois que vous avez terminé une exécution de profilage, la vue Résumé des données de profilage s'affiche dans la fenêtre principale de Visual Studio.La vue Résumé affiche l'arborescence des appels de fonction la plus active, appelée Chemin réactif, où la majeure partie du travail dans l'application a été exécutée. La vue répertorie également les fonctions qui exécutaient le plus de travail individuel et fournit un graphique de chronologie que vous pouvez utiliser pour vous concentrer sur les segments spécifiques de la session d'échantillonnage.
Composants requis
Vous pouvez effectuer plusieurs actions avant de commencer à profiler pour vous assurer que vous ne rencontrez pas de problèmes inutiles.
Exécuter en tant qu'administrateur Si vous n'êtes pas administrateur sur l'ordinateur que vous utilisez, vous devez exécuter Visual Studio en tant qu'administrateur pour vous assurer que vous avez les autorisations nécessaires pour quelques-unes des fonctionnalités des outils de profilage.Pour cela, cliquez sur le bouton Démarrer, localisez l'icône d'application de Visual Studio, cliquez avec le bouton droit sur l'icône, puis cliquez sur Exécuter en tant qu'administrateur.
Définir la configuration de build active sur Version finale Les versions Debug insèrent du code de diagnostic supplémentaire dans votre application et n'incluent pas les optimisations que le compilateur exécute dans les versions Release.Le profilage de la version Release de votre application fournit des données plus exactes sur la performance de votre application.Pour modifier la configuration active, dans le menu Générer cliquez sur Gestionnaire de configurations et dans la boîte de dialogue, sous Configuration de la solution active, sélectionnez Version finale.
Obtenir des fichiers de symboles Windows Si vous profilez du code qui appelle des fonctions Windows, vous devez vous assurer que vous avez les fichiers .pdb les plus récents.Sans ces fichiers, vos vues de rapport répertorient des noms de fonction Windows cryptés et difficiles à comprendre.Pour plus d'informations sur la façon de s'assurer que vous possédez les fichiers dont vous avez besoin, consultez Comment : référencer les informations de symboles Windows.
Étape 1 : créer et exécuter une session de performance
Pour obtenir les données que vous devez analyser, vous devez d'abord créer une session de performance, puis exécuter la session.L'Assistant Performance vous permet de faire les deux.
Pour créer et exécuter une session de performance
Ouvrez la solution dans Visual Studio.
Dans le menu Analyser, cliquez sur Lancer l'Assistant Performance.
Acceptez le paramètre par défaut d'Échantillonnage de l'UC (recommandé) et cliquez sur Suivant.
Acceptez le projet par défaut, puis cliquez sur Suivant.
Assurez-vous que la case à cocher Lancer le profilage une fois l'Assistant terminé est activée, puis cliquez sur Terminer.
Votre application démarre et le profileur commence à collecter des données.
Testez les fonctionnalités qui peuvent contenir des problèmes de performance.
Fermez l'application normalement.
Une fois que vous avez terminé d'exécuter l'application, la vue Résumé des données de profilage s'affiche dans la fenêtre principale de Visual Studio et une icône s'affiche pour la nouvelle session dans la fenêtre Explorateur de performances.
Étape 2 : analyser les données d'échantillonnage
Lorsque vous terminez d'exécuter une session de performance, la vue Résumé du rapport de profilage s'affiche dans la fenêtre principale de Visual Studio.
Nous vous recommandons de commencer à analyser vos données en examinant le Chemin réactif, puis la liste des fonctions qui exécutent la majeure partie du travail, et enfin, en vous concentrant sur d'autres fonctions à l'aide de la chronologie Résumé.Vous pouvez également consulter des suggestions et des avertissements de profilage dans la fenêtre Liste d'erreurs.
Notez bien que la méthode d'échantillonnage peut ne pas vous donner les informations dont vous avez besoin.Par exemple, les exemples sont collectés uniquement lorsque l'application exécute le code du mode utilisateur.Par conséquent, certaines fonctionnalités, telles que les opérations d'entrée et de sortie, ne sont pas capturées par l'échantillonnage.Les outils de profilage fournissent plusieurs méthodes de collection qui peuvent vous permettre de vous concentrer sur les données importantes.Pour plus d'informations sur les autres méthodes, consultez Comment : choisir des méthodes de collection.
Chaque zone numérotée dans l'illustration est en rapport avec une étape de la procédure.
Pour analyser les données d'échantillonnage
Dans la vue Résumé, le Chemin réactif affiche la branche de l'arborescence des appels de votre application avec les exemples inclusifs les plus élevés.C'est le chemin d'exécution qui était le plus actif au moment de la collecte des données.Les valeurs inclusives élevées peuvent indiquer que l'algorithme qui génère l'arborescence des appels peut être optimisé.Recherchez la fonction dans votre code qui se trouve au niveau le plus profond du chemin d'accès.Remarquez que le chemin d'accès peut également inclure des fonctions système ou d'autres fonctions dans les modules externes.
Les Échantillons inclusifs indiquent la quantité de travail effectuée par la fonction et toute autre fonction qu'elle a appelée.Les nombres inclusifs élevés pointent vers les fonctions qui sont généralement les plus coûteuses.
Les Échantillons exclusifs indiquent la quantité de travail effectuée par le code dans le corps de la fonction, à l'exception du travail effectué par les fonctions qu'il a appelées.Les nombres exclusifs élevés peuvent indiquer un goulot d'étranglement au niveau des performances dans la fonction elle-même.
Cliquez sur le nom de fonction pour afficher la vue Informations relatives à la fonction des données de profilage.La vue Informations relatives à la fonction présente une vue graphique des données de profilage pour la fonction sélectionnée, en affichant toutes les fonctions qui ont appelé cette fonction et toutes les fonctions appelées par la fonction sélectionnée.
La taille des blocs de l'appel et des fonctions appelées représente la fréquence relative à laquelle les fonctions ont appelé ou ont été appelées.
Vous pouvez cliquer sur le nom d'une fonction d'appel ou d'une fonction appelée afin de la sélectionner dans la vue Informations relatives à la fonction.
Le volet inférieur des fenêtres Informations relatives à la fonction affiche le code de fonction lui-même.Si vous examinez le code et recherchez une possibilité d'optimiser sa performance, cliquez sur le nom de fichier source pour ouvrir le fichier dans l'éditeur Visual Studio.
Pour continuer votre analyse, retournez à la vue Résumé en sélectionnant Résumé dans la liste déroulante Affichage.Examinez ensuite les fonctions dans Fonctions faisant le plus de travail individuel.Cette liste affiche les fonctions avec les exemples exclusifs les plus élevés.Le code du corps de fonction de ces fonctions a effectué un travail significatif et vous pouvez peut-être l'optimiser.Pour analyser davantage une fonction particulière, cliquez sur le nom de fonction pour l'afficher dans la vue Informations relatives à la fonction.
Pour continuer votre examen de l'exécution du profilage, vous pouvez analyser de nouveau un segment des données de profilage en utilisant la chronologie dans la vue Résumé pour vous montrer le Chemin réactif et les Fonctions faisant le plus de travail individuel à partir d'un segment sélectionné.Par exemple, si vous vous concentrez sur un pic plus petit dans la chronologie, vous pouvez noter des arborescences des appels coûteuses et des fonctions qui n'ont pas été affichées dans l'analyse de l'exécution du profilage toute entière.
Pour réanalyser un segment, sélectionnez un segment dans la zone Chronologie Résumé, puis cliquez sur Filtrer par sélection.
Le profileur utilise également un ensemble de règles pour suggérer des façons d'améliorer l'exécution du profilage et pour identifier les éventuels problèmes de performances.Si un problème est détecté, un avertissement s'affiche dans la fenêtre Liste d'erreurs.Pour ouvrir la fenêtre Liste d'erreurs, dans le menu Affichage, cliquez sur Liste d'erreurs.
Pour voir quelle fonction a déclenché un avertissement, dans la vue Informations relatives à la fonction, double-cliquez sur l'avertissement.
Pour afficher des informations détaillées sur l'avertissement, cliquez avec le bouton droit sur l'erreur, puis cliquez sur Afficher l'aide sur l'erreur.
Étape 3 : réviser le code et réexécuter une session
Après avoir recherché et optimisé une ou plusieurs fonctions, vous pouvez répéter l'exécution du profilage et comparer les données pour afficher les différences de performance de votre application suite aux modifications que vous avez apportées.
Pour réviser le code et réexécuter le profileur
Modifiez votre code.
Pour ouvrir l'Explorateur de performances, dans le menu Affichage, cliquez sur Autres fenêtres, puis sur Explorateur de performances.
Dans l'Explorateur de performances, cliquez avec le bouton droit sur la session que vous souhaitez réexécuter, puis cliquez sur Démarrer avec le profilage.
Une fois que vous avez réexécuté la session, un autre fichier de données est ajouté au dossier Rapports de la session dans l'Explorateur de performances.Sélectionnez les données de profilage d'origine et nouvelles, cliquez avec le bouton droit sur la sélection, puis cliquez sur Comparer les rapports de performances.
Une nouvelle fenêtre de rapport s'ouvre et affiche les résultats de la comparaison.Pour plus d'informations sur l'utilisation de la vue de comparaison, consultez Comment : comparer des fichiers de données du profileur.
Voir aussi
Concepts
Analyse des performances de l'application à l'aide des outils de profilage
Démarrage avec les outils de profilage