VSPerfCmd
Aggiornamento: novembre 2007
Lo strumento VSPerfCmd consente di avviare e interrompere la raccolta dei dati sulle prestazioni e utilizza la sintassi seguente:
VSPerfCmd [/U] [/options]
Nelle tabelle riportate di seguito sono descritte le opzioni dello strumento VSPerfCmd.
Opzione |
Descrizione |
||
U |
L'output della console reindirizzato viene scritto come Unicode. Deve essere la prima opzione specificata. |
||
Start:mode |
Avvia VSPerfMon e ne attende l'inizializzazione. Richiede l'opzione Output. Il parametro mode può essere uno dei seguenti: COVERAGE: raccoglie dati sul code coverage SAMPLE: raccoglie dati sul campionamento TRACE: raccoglie dati sulla strumentazione |
||
Output:filename |
Consente di specificare il nome del file di output. |
||
CrossSession|CS |
Abilita analisi tra processi incrociati. I nomi delle opzioni CROSSSESSION e CS sono entrambi supportati. |
||
User:[domain\]username |
Utilizzata con l'opzione START. Consente ai client di accedere al monitor con l'account specificato. |
||
WaitStart[:n] |
Attende l'inizializzazione del logger di raccolta dei dati. Se si specifica n, VSPerfCmd attende al massimo n secondi. Se n non viene specificato, l'attesa di VSPerfCmd sarà infinita. In questo modo viene semplificato l'utilizzo di VSPerfCmd durante un processo batch. |
||
Counter:cfg |
Quando si utilizza il metodo di analisi mediante campionamento, specifica un contatore CPU e un numero di eventi da utilizzare come intervallo di campionamento. È possibile campionare solo il valore di un contatore. Quando si utilizza il metodo di analisi tramite strumentazione, specifica un contatore CPU di cui raccogliere di dati per ogni punto di strumentazione. È possibile raccogliere i dati di più contatori specificando più opzioni Counter (solo strumentazione). Per specificare i dati del contatore (cfg), utilizzare la seguente sintassi: CounterName[,Reload[,FriendlyName]]
|
||
QueryCounters |
Visualizza un elenco di contatori validi per la piattaforma. |
||
WinCounter:path |
Specifica un contatore delle prestazioni di Windows da includere nei dati contrassegnati. path è una stringa del contatore delle prestazioni di Windows nel percorso del contatore in formato PDH. Esempio: \Processor (0)\% Processor Time \System\Context Switches/sec |
||
AutoMark:n |
Specifica l'intervallo di tempo (in millisecondi) che intercorre tra contrassegni automatici durante l'utilizzo di /WINCOUNTER. Arrotondato al più vicino 500ms. Utilizzare 0 per disabilitare i contrassegni automatici. (impostazione predefinita=500ms se non specificato) |
||
Events:option |
L'opzione EVENTS controlla la raccolta degli eventi ETW (Event Trace Window). I dati raccolti vengono forniti dal provider ETW. Il formato di option è il seguente: <on | off>, <guid>[,flags[,level]] <on | off>, <nome provider>[,flags[,level]] guid: GUID di controllo del provider. In alternativa, invece del GUID è possibile specificare il nome di un provider se questo è registrato con WMI. flags: valore di flag esadecimale con prefisso '0x' definito dal provider di eventi. Per ulteriori informazioni, vedere la documentazione ETW provider. level: determina la quantità di informazioni raccolte ed è definito dal provider di eventi. Per ulteriori informazioni, vedere la documentazione ETW provider.
L'opzione EVENTS riconosce inoltre le opzioni kernel comuni indicate di seguito. on, option[,option] in cui l'opzione è una delle seguenti: Process: eventi di processo Thread: eventi thread Image: eventi di caricamento e scaricamento di immagini Disk: eventi di I/O del disco File: eventi di I/O file Hardfault: errori di pagina hardware Pagefault: errori di pagina software Network: eventi di rete Registry: eventi di accesso al Registro di sistema Il provider di kernel può essere solo attivato. Non è infatti possibile disattivarlo né modificarne i flag fino allo spegnimento del monitor. |
||
Status |
Stato applicato ai processi sottoposti ad analisi. Questa opzione elenca i processi e i thread insieme al relativo stato di analisi corrente (On/Off). Nel report, ad esempio, l'opzione STATUS non indica l'interruzione di un processo. Segnala invece se il processo è stato analizzato. |
||
ShutDown[:n] |
Attende la chiusura o la disconnessione delle applicazioni monitorate e quindi arresta VSPerfMon.exe e attende il completamento della chiusura. Se si specifica n, VSPerfCmd attende al massimo n secondi. Se n non viene specificato, l'attesa di VSPerfCmd sarà infinita. In questo modo viene semplificato l'utilizzo di VSPerfCmd durante un processo batch. |
||
GlobalOn |
L'opzione GLOBALON consente l'analisi dopo l'esecuzione di GLOBALOFF. A livello interno, l'opzione GLOBALON imposta su uno il conteggio globale Start/Stop. Per ulteriori informazioni, vedere GLOBALOFF. |
||
GlobalOff |
L'opzione GLOBALOFF disattiva tutte le opzioni di analisi impedendo la raccolta di dati. Questa opzione non chiude la sessione di prestazioni e può essere utilizzata per evitare la raccolta di dati nella fase di avvio o inizializzazione di un'applicazione. Per evitare la raccolta di dati non rilevanti: |
||
ProcessOn:pid |
L'opzione PROCESSON riavvia l'analisi di un processo specifico utilizzando il relativo ID processo (pid) dopo una chiamata a PROCESSOFF. A livello interno, l'opzione PROCESSON imposta su uno il conteggio Start/Stop per il processo specificato. |
||
ProcessOff:pid |
L'opzione PROCESSOFF interrompe l'analisi e la raccolta di dati per un processo specifico utilizzando il relativo ID processo (pid). Continua la raccolta dei dati di altri processi o thread. Ciò risulta utile se si desidera evitare la raccolta di dati prima che un processo raggiunga un determinato stato. Dopo il raggiungimento di uno stato specifico di un processo, è possibile utilizzare l'opzione PROCESSON per avviare la raccolta di dati. A livello interno, l'opzione PROCESSOFF imposta su zero il conteggio Start/Stop per il processo specificato. |
||
ThreadOn:tid |
L'opzione THREADON riavvia l'analisi di un thread specifico utilizzando il relativo ID thread (tid) dopo una chiamata a THREADOFF. A livello interno, l'opzione THREADON imposta su uno il conteggio Start/Stop per il thread specificato. Questa opzione è valida solo in modalità TRACE. |
||
ThreadOff:tid |
L'opzione THREADOFF interrompe l'analisi e la raccolta di dati per un thread specifico utilizzando il relativo ID thread (tid). Continua la raccolta dei dati di altri processi o thread. Ciò risulta utile se si desidera evitare la raccolta di dati prima che un thread raggiunga un determinato stato. Dopo il raggiungimento di uno stato specifico di un thread, è possibile utilizzare l'opzione THREADON per avviare la raccolta di dati. A livello interno, l'opzione THREADOFF imposta su zero il conteggio Start/Stop per il thread specificato. Questa opzione è valida solo in modalità TRACE. |
||
MARK:MarkNum[,MarkText] |
Inserisce un contrassegno nel flusso globale di eventi con testo facoltativo. Questa opzione risulta utile per esaminare i dati compresi tra due contrassegni. marknum: qualsiasi valore con tipo di dati ULONG In alternativa, è possibile chiamare l'API MarkProfile nel codice per contrassegnare aree specifiche dell'applicazione. Queste informazioni sono disponibili solo nel report Call Trace. |
Opzioni del metodo di campionamento
Le opzioni riportate di seguito sono disponibili solo nella modalità SAMPLE.
Opzione |
Descrizione |
---|---|
Launch:Eseguibile |
Avvia il comando specificato ed esegue la connessione al profiler basato su esempi. |
Args:Argomenti |
Argomenti per l'applicazione avviata. |
Console |
Avvia il comando specificato in una nuova console. |
Attach:PID[,PID] |
Connette il profiler basato su esempi agli ID processo specificati, pid o nome processo. |
Detach:PID[,PID] |
Disconnette il profiler basato su esempi dagli ID processo specificati, pid o nome processo. |
Detach |
Disconnette il profiler basato su esempi da tutti i processi. |
GC[:Allocation|:Lifetime] |
Questa opzione è disponibile solo in modalità campionamento. Attiva l'analisi della memoria gestita. È possibile attivare l'analisi delle sole allocazioni (GC:allocation) o delle allocazioni e della durata degli oggetti (GC:lifetime). Il valore predefinito è per le sole allocazioni. ed è valida solo con l'opzione /LAUNCH. |
PF[:n] |
Esegue il campionamento su ogni n errore di pagina (impostazione predefinita = 10). |
Sys[:n] |
Esegue il campionamento su ogni n chiamata di sistema (impostazione predefinita = 10). |
Timer[:n] |
Esegue il campionamento su ogni n ciclo (impostazione predefinita = 10). |
Opzioni del dispositivo della modalità kernel e del componente del servizio
Nelle seguenti opzioni vengono supportati componenti del servizio di analisi o driver di periferica della modalità kernel. Queste opzioni consentono di impostare le autorizzazioni di analisi. Devono essere eseguite come amministratore da una console della riga di comando. Per ulteriori informazioni, vedere Using the Run As Command.
Opzione |
Descrizione |
---|---|
Admin:Security <ALLOW|DENY> Right[ Right] <User|Group> |
Consentire o negare al gruppo o all'utente specificato l'accesso ai servizi di analisi. Può essere Right. CrossSession - consente all'utente di accedere al servizio per eseguire sessioni incrociate di analisi; SampleProfiling - consente all'utente di accedere al driver per abilitare l’analisi mediante campionamento. Vengono utilizzate anche per accedere ad informazioni di transizione kernel durante l'analisi; FullAccess - consente all'utente di accedere alla CrossSession e alla SampleProfiling. |
Admin:Security, List |
Elenca la stato corrente dei servizi di analisi e le autorizzazioni dell'utente. |
Admin: <Service|Driver><START|STOP|INSTALL|UNINSTALL> |
Avviare, interrompere, installare o disinstallare il componente del servizio di analisi (servizio) o il driver di periferica della modalità kernel (driver). |
Admin: <Service|Driver>AutoStart <ON|OFF> |
Abilitare o disabilitare automaticamente l’avvio del servizio di analisi (servizio) o del driver di periferica della modalità kernel (driver) dopo un riavvio. |
VsPerfDrv.sys
Nelle versioni precedenti il profiler supportava la raccolta da applicazioni CPU in modalità kernel utilizzando il file VSPerfDrv.Sys. VsPerfDrv.sys è obsoleto. Utilizzare le opzioni ADMIN di VsPerfCmd per questa funzionalità.
Vedere anche
Riferimenti
Definizioni delle colonne dei report degli strumenti di analisi