VSPerfCmd
Mise à jour : novembre 2007
L'outil VSPerfCmd permet de démarrer et d'arrêter la collecte de données de performance. Il utilise la syntaxe suivante :
VSPerfCmd [/U] [/options]
Les tableaux ci-dessous décrivent les options de l'outil VSPerfCmd :
Option |
Description |
||
U |
La sortie de console redirigée est écrite sous Unicode. Doit être la première option spécifiée. |
||
Start:mode |
Démarre VSPerfMon et patiente jusqu'à ce qu'il soit initialisé. Requiert le commutateur Output. mode peut être l'un des éléments suivants : COVERAGE - rassemble des données de couverture du code SAMPLE - rassemble des données d'échantillonnage TRACE - rassemble des données d'instrumentation |
||
Output:filename |
Spécifie le nom du fichier de sortie. |
||
CrossSession|CS |
Active le profilage interprocessus. Les noms d'options CROSSSESSION et CS sont pris en charge. |
||
User:[domain\]username |
Utilisé avec l'option START. Autorise l'accès client à l'analyseur à partir du compte spécifié. |
||
WaitStart[:n] |
Attend l'initialisation du journal de collecte de données. Si n est spécifié, VSPerfCmd attendra au plus n secondes. Si n n'est pas spécifié, VSPerfCmd attendra indéfiniment. Cela facilite l'utilisation de VSPerfCmd dans le cadre d'un processus par lots. |
||
Counter:cfg |
En cas d'utilisation de la méthode de profilage par échantillonnage, spécifie un compteur UC et le nombre d'événements à utiliser comme intervalle d'échantillonnage. Vous ne pouvez échantillonner qu'une seule valeur de compteur à la fois. En cas d'utilisation de la méthode de profilage par instrumentation, spécifie un compteur UC à collecter à chaque point d'instrumentation. Vous pouvez collecter les données de plusieurs compteurs en spécifiant plusieurs options Counter (instrumentation uniquement). Pour spécifier les données du compteur (cfg), utilisez la syntaxe suivante : CounterName[,Reload[,FriendlyName]]
|
||
QueryCounters |
Affiche une liste de compteurs valides pour la plateforme. |
||
WinCounter:chemin |
Spécifie un compteur de performance Windows à inclure avec les données de marque. path est une chaîne du compteur de performance Windows au format de chemin d'accès PDH. Par exemple : \Processor(0)\% Temps processeur \System\Changements de contexte/sec |
||
AutoMark:n |
Spécifie l'intervalle de temps (en millisecondes) entre les marques automatiques lors de l'utilisation de /WINCOUNTER. Arrondi aux 500 ms les plus proches. Utilisez 0 pour désactiver les marques automatiques (valeur par défaut=500 ms en l'absence de spécification). |
||
Events:option |
L'option EVENTS contrôle la collecte d'événements ETW (Event Trace Window). Les données collectées sont fournies par le fournisseur ETW. Le format option est : <activé | désactivé>, <guid>[,flags[,level]] <activé | désactivé>, <NomFournisseur>[,flags[,level]] guid - GUID de contrôle du fournisseur. Un nom de fournisseur peut également être spécifié à la place du GUID s'il est enregistré avec WMI. flags - valeur d'indicateurs hexadécimale préfixée '0x'. Elle est définie par le fournisseur d'événements. Pour plus d'informations, consultez la documentation du fournisseur d'ETW. level- détermine la quantité d'informations collectée. Elle est définie par le fournisseur d'événements. Pour plus d'informations, consultez la documentation du fournisseur d'ETW.
En outre, l'option EVENTS peut comprendre les options de noyau communes suivantes : on, option[,option] où option représente un des éléments suivants : Process - Événements de processus Thread - Événements de thread Image - Événements de chargement et de déchargement d'images Disk - Événements d'E/S de disque File - Événements d'E/S de fichier Hardfault- Erreurs de page matérielles Pagefault- Erreurs de page logicielles Network - Événements de réseau Registry - Événements d'accès au Registre Notez que le fournisseur de noyau peut uniquement être activé. Il n'est pas désactivé, ses indicateurs ne peuvent pas non plus être modifiés, tant que le gestionnaire ne s'est pas arrêté. |
||
Status |
État appliqué aux processus profilés. Il répertorie les processus et les threads, ainsi que l'état de leur profil actuel (Activé/Désactivé). Par exemple, si un processus a été arrêté, STATUS ne l'indique pas dans le rapport. Il affiche si le processus est profilé ou non. |
||
ShutDown[:n] |
Attend que les applications surveillées s'arrêtent ou se détachent, puis arrête l'outil VSPerfMon.exe et attend la fin de la procédure d'arrêt. Si n est spécifié, VSPerfCmd attendra au plus n secondes. Si n n'est pas spécifié, VSPerfCmd attendra indéfiniment. Cela facilite l'utilisation de VSPerfCmd dans le cadre d'un processus par lots. |
||
GlobalOn |
L'option GLOBALON active le profilage après une option GLOBALOFF. En interne, l'option GLOBALON affecte au nombre Start/Stop global la valeur un. Pour plus d'informations, consultez GLOBALOFF. |
||
GlobalOff |
L'option GLOBALOFF désactive tout le profilage et aucune donnée n'est collectée. Cette option n'arrête pas la session de performance. Vous pouvez utiliser cette option pour éviter la collecte de données pendant le démarrage de l'application ou la phase d'initialisation. Pour éviter la collecte de données sans objet : |
||
ProcessOn:pid |
L'option PROCESSON redémarre le profilage d'un processus spécifique à l'aide de son ID de processus (pid) après un appel à PROCESSOFF. En interne, l'option PROCESSON affecte au nombre de Start/Stop la valeur un pour le processus spécifié. |
||
ProcessOff:pid |
L'option PROCESSOFF arrête le profilage et la collecte de données d'un processus spécifique à l'aide de son ID de processus (pid). D'autres processus ou threads continuent à rassembler des données. Cela est utile si vous souhaitez éviter de rassembler des données avant que le processus n'atteigne un certain état. Vous pouvez utiliser l'option PROCESSON, après que le processus a atteint un certain état, pour commencer la collecte de données. En interne, PROCESSOFF affecte au nombre de Start/Stop la valeur zéro pour le processus spécifié. |
||
ThreadOn:TID |
L'option THREADON redémarre le profilage d'un thread spécifique à l'aide de son ID de thread (tid) après un appel à THREADOFF. En interne, l'option THREADON affecte au nombre de Start/Stop la valeur un pour le thread spécifié. Cette option est uniquement valide en mode TRACE. |
||
ThreadOff:TID |
L'option THREADOFF arrête le profilage et la collecte de données d'un thread spécifique à l'aide de son ID de thread (tid). D'autres processus ou threads continuent à rassembler des données. Cela est utile si vous ne voulez pas rassembler des données avant que le thread n'atteigne un certain état. Vous pouvez utiliser l'option THREADON, après que le thread a atteint un certain état, pour commencer la collecte de données. En interne, THREADOFF affecte au nombre de Start/Stop la valeur zéro pour le thread spécifié. Cette option est uniquement valide en mode TRACE. |
||
MARK:NuméroMarque[,TexteMarque] |
Insère une marque dans le flux d'événements global, avec du texte facultatif. Cela est utile si vous souhaitez examiner les données entre deux marques. marknum - toute valeur du type de données ULONG Vous pouvez également appeler l'API MarkProfile dans votre code pour marquer des zones spécifiques de l'application. Ces informations ne sont disponibles que dans le rapport Trace des appels. |
Options de la méthode d'échantillonnage
Les options suivantes ne sont disponibles qu'en mode SAMPLE :
Option |
Description |
---|---|
Launch:Exécutable |
Lance la commande spécifiée et attache l'exemple de profileur. |
Args:Arguments |
Arguments de l'application lancée. |
Console |
Lance la commande spécifiée dans une nouvelle console. |
Attach:PID[,PID] |
Attache l'exemple de profileur aux ID du processus spécifié - identificateur de processus (pid) ou nom de processus. |
Detach:PID[,PID] |
Détache l'exemple de profileur des ID du processus spécifié - identificateur de processus (pid) ou nom de processus. |
Detach |
Détache l'exemple de profileur de tous les processus. |
GC[:Allocation|:Lifetime] |
Cette option n'est disponible qu'en mode d'échantillonnage. Active le profilage de mémoire managé. Il est possible d'activer le traçage des allocations uniquement GC:allocation ou des allocations et durée de vie des objets GC:lifetime. La valeur par défaut est uniquement des allocations. Elle n'est valide qu'avec l'option /LAUNCH. |
PF[:n] |
Exemples sur chaque numéro d'erreur de page (valeur par défaut=10). |
Sys[:n] |
Exemples sur chaque numéro d'appel système (valeur par défaut=10). |
Timer[:n] |
Exemples sur chaque numéro de cycle (valeur par défaut=10000000). |
Options des composants du service et des périphériques en mode noyau
Les options suivantes prennent en charge les composants du service de profilage ou les pilotes de périphériques en mode noyau. Ces options définissent les autorisations de profilage. Celles-ci doivent être exécutées à partir d'une console de ligne de commande s'exécutant en tant qu'administrateur. Pour plus d'informations, consultez Utilisation de la commande Exécuter en tant que (en anglais).
Option |
Description |
---|---|
Admin:Security <ALLOW|DENY> Droit[Droit] <Utilisateur|Groupe> |
Autorise ou refuse à l'utilisateur ou au groupe spécifié l'accès aux services de profilage. Right peut être : CrossSession - accorde à l'utilisateur l'accès au service pour faire du profilage intersession ; SampleProfiling - accorde à l'utilisateur l'accès au pilote pour activer le profilage d'échantillonnage. Également utilisé pour accéder aux informations de transition du noyau au cours du profilage de trace ; FullAccess - accorde à l'utilisateur l'accès à CrossSession et à SampleProfiling. |
Admin:Security, List |
Répertorie l'état actuel des services de profilage ainsi que les autorisations utilisateur. |
Admin: <Service|Pilote><START|STOP|INSTALL|UNINSTALL> |
Démarre, arrête, installe ou désinstalle le composant du service de profilage (service) ou le pilote de périphérique de mode noyau (pilote). |
Admin: <Service|Pilote>AutoStart <ON|OFF> |
Active ou désactive automatiquement le démarrage du service de profilage (service) ou le pilote de périphérique de mode noyau (pilote) après un redémarrage. |
VsPerfDrv.sys
Les versions antérieures du profileur prenaient en charge la collecte à partir des applications en mode noyau UC à l'aide de VSPerfDrv.Sys. VsPerfDrv.sys est obsolète. Pour assurer cette fonctionnalité, utilisez les options VsPerfCmd ADMIN.