Profilage du code Python dans Visual Studio

Visual Studio fournit des fonctionnalités de profilage pour les applications Python lorsque vous déboguez votre code. Le débogueur Visual Studio vous permet de parcourir votre code pour vérifier les variables, analyser l’état du programme, résoudre les problèmes potentiels, et ainsi de suite. Les fonctionnalités de profilage de Visual Studio fournissent des informations sur les temps d’exécution de votre programme. Vous pouvez utiliser ces informations pour identifier les problèmes de performances dans votre code.

Le profilage est disponible pour Python 3.9 et versions antérieures lorsque vous utilisez un interpréteur basé sur CPython.

Prérequis

Visual Studio pour Mac n’est actuellement pas pris en charge. Pour plus d’informations, veuillez consulter la rubrique Qu’advient-il de Visual Studio pour Mac ? Visual Studio Code sur Windows, Mac et Linux fonctionne bien avec Python grâce aux extensions disponibles.

Utiliser le profileur avec l’interpréteur CPython

Lorsque vous profilez une application Python, Visual Studio collecte des données pendant toute la durée du processus.

Suivez les étapes suivantes pour commencer à utiliser les fonctions de profilage dans Visual Studio :

  1. Dans Visual Studio, ouvrez votre fichier de code Python.

  2. Vérifiez que l’environnement actuel de votre code Python est un interpréteur basé sur CPython. Vous pouvez vérifier l’interpréteur sélectionné dans la fenêtre Environnements Python.

  3. Dans la barre d’outils principale, sélectionnez Déboguer>Lancer le profilage Python. Visual Studio ouvre la boîte de dialogue Paramètres de profilage :

    Capture d’écran de la boîte de dialogue de configuration des paramètres de profilage dans Visual Studio.

  4. Dans la boîte de dialogue Paramètres de profilage, choisissez le fichier de code ou le code de projet que vous souhaitez profiler :

    • Pour profiler tout le code du projet :

      1. Sélectionnez Projet en cours.

      2. Sélectionnez le projet dans la liste déroulante. La liste affiche tous les projets dans la solution Visual Studio actuelle.

    • Pour profiler un fichier spécifique :

      1. Sélectionnez un script autonome.

      2. Sélectionnez l’interpréteur Python dans la liste déroulante ou accédez à l’emplacement. Pour spécifier un interpréteur non répertorié, choisissez Autre dans la liste déroulante, puis spécifiez le chemin d’accès de l’interpréteur.

      3. Identifiez le fichier de script ou accédez à l’emplacement.

      4. Spécifiez le répertoire de travail ou accédez à l’emplacement.

      5. Spécifiez les arguments de ligne de commande pour le script.

  5. Cliquez sur Démarrer.

Le profileur s’exécute et ouvre un rapport de performances dans Visual Studio. Vous pouvez consulter le rapport pour explorer la façon dont le temps est passé dans votre application :

Capture d’écran du rapport sur les performances du profilage dans Visual Studio 2022.

Capture d’écran du rapport sur les performances du profilage dans Visual Studio.

Utiliser le profileur avec IronPython

IronPython est une implémentation .NET de Python disponible en versions 32 et 64 bits. IronPython n’est pas un interpréteur CPython. Visual Studio prend en charge le débogage Python standard pour IronPython, mais pas les fonctionnalités de profilage.

Pour les projets IronPython, vous pouvez utiliser le profileur Visual Studio .NET. Exécutez la commande ipy.exe directement en tant qu’application cible avec les arguments appropriés pour lancer votre script de démarrage. Sur la ligne de commande, incluez l’argument -X:Debug pour vous assurer que tout votre code Python peut être débogué et profilé. Cet argument génère un rapport de performances qui inclut le temps passé dans le runtime IronPython et votre code. Votre code est identifié à l’aide de noms tronqués.

IronPython offre un profilage intégré, mais il n’existe actuellement aucun visualiseur utilisable. Pour plus d’informations, consultez Un profileur IronPython (blog) et Débogage et profilage dans la documentation IronPython.