Obtenir des statistiques de CPU par thread


10

Comment obtenir l'utilisation actuelle du CPU pour chaque thread dans une application spécifique? Est-il possible d'obtenir ces informations quelque part ou en utilisant un outil?

Réponses:


8

Pour une réponse rapide, utilisez l' Explorateur de processus de SysInternal . Double-cliquez sur un processus pour ouvrir la boîte de dialogue des détails. l'onglet threads donne une liste triable de tous les threads, y compris le delta de changement de contexte et le temps CPU.


J'utilisais Process Explorer auparavant, mais je n'y voyais pas la colonne CPU car elle était trop étroite et seule la flèche de tri était visible comme en-tête de la colonne.
dabest1

7

Perfmon (Analyseur de performances) devrait vous donner les détails que vous souhaitez.

Ce qui suit suppose Windows 2000, XP ou Server 2003. Je n'ai pas vérifié mais je pense que le moniteur de performances est un peu différent sous Vista, Windows 7 et Server 2008.

Pour exécuter l'Analyseur de performances, accédez à Démarrer> Panneau de configuration> Outils d'administration> Performances

Pour ajouter un graphique pour chaque thread d'une application, cliquez avec le bouton droit sur le graphique et choisissez Propriétés. Vous voudrez peut-être supprimer l'un des paramètres par défaut qu'il contient pour vous donner un graphique plus propre.

Cliquez sur le bouton "Ajouter ..." et assurez-vous que "Utiliser les compteurs d'ordinateurs locaux" est coché (sauf si vous souhaitez surveiller un autre serveur, auquel cas, allez-y et choisissez cette option).

Sous "Objet de performance", choisissez "Thread"

Sélectionnez le compteur "% Processor Time", puis sélectionnez tous les threads que vous souhaitez surveiller (contrôle + clic pour en sélectionner plusieurs). Cliquez sur "Ajouter" puis sur "Fermer".

De retour dans les propriétés, vous pouvez personnaliser le graphique comme vous le souhaitez, en attribuant des couleurs, des motifs, etc. Cliquez sur OK.

Vous devrez peut-être démarrer le graphique, si vous le faites, puis en cliquant sur le signe rouge STOP pour qu'il ne soit pas activé, le graphique démarrera.


+1, sauf pour le commentaire WMI au début, car il n'a pas grand-chose à voir avec le reste du message. Ce qui a été mentionné fonctionne également de façon similaire pour Vista et 2008. Enfin, vous pouvez également démarrer Perfmon en exécutant perfmon.msc
DougN

Ugh, désolé, j'ai mélangé mes conditions. Je voulais dire perfmon. Je vais le réparer maintenant.
Mark Henderson

1

Moniteur de processus (sysinternals)

Je pense que ProcessMonitor de Sysinternals (récemment acheté par Microsoft) fonctionnerait probablement.

Process Monitor est un outil de surveillance avancé pour Windows qui affiche le système de fichiers en temps réel, le registre et l'activité des processus / threads. Il combine les fonctionnalités de deux utilitaires Sysinternals hérités, Filemon et Regmon, et ajoute une liste complète d'améliorations, notamment un filtrage riche et non destructif, des propriétés d'événement complètes telles que les ID de session et les noms d'utilisateurs, des informations de processus fiables, des piles de threads complètes avec prise en charge des symboles intégrée pour chaque opération, enregistrement simultané dans un fichier, et bien plus encore. Ses fonctionnalités particulièrement puissantes feront de Process Monitor un utilitaire de base dans le dépannage de votre système et la boîte à outils de chasse aux logiciels malveillants.

Voici le lien:

http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx


Merci pour votre suggestion. Votre réponse est correcte, mais ce qui m'a aidé à trouver l'utilisation du processeur par thread dans Process Explorer était la réponse que j'ai choisie par Richard.
dabest1

0

vous pouvez utiliser le moniteur de performances Windows intégré, tapez simplement perfmon au début, exécutez. une fois sur perfmon, cliquez sur le signe plus, sélectionnez le processus, vous choisissez votre processus, puis sélectionnez ce que vous voulez voir. retour aux sources!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.