Contatori relativi a CPU e Windows negli strumenti di profilatura
Il profiler di Visual Studio 2012 consente di raccogliere dati sulle prestazioni generati dal sistema operativo (contatori di Windows) e dal processore (contatori della CPU).
Requisiti
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Professional
[!NOTA]
Le funzionalità di sicurezza avanzate in Windows 8 e Windows Server 2012 necessarie modifiche significative in modo che il profiler di Visual Studio consente di raccogliere dati su queste piattaforme.Le applicazioni di archivio di Windows richiedono nuove tecniche di raccolta.Vedere Profilatura delle applicazioni Windows 8 e Windows Server 2012.
Contatori Windows
I contatori di Windows fanno parte dell'infrastruttura diagnostica di Windows che fornisce informazioni sulle prestazioni del sistema operativo o di una applicazione, un servizio o un driver.I contatori Windows variano in base alla configurazione del computer in uso e potrebbero non essere disponibili in altri computer.I contatori delle prestazioni di Windows vengono raccolti nei file dei dati di profilatura come contrassegni che possono essere utilizzati per filtrare visualizzazioni e rapporti.
Contatori della CPU
I contatori CPU costituiscono una funzionalità della CPU del computer e memorizzano il numero di eventi correlati all'hardware.Quando si raccolgono dati del contatore della CPU tramite il metodo di profilatura della strumentazione, i dati vengono aggiunti ai quelli relativi a funzioni e moduli.È possibile raccogliere dati di più contatori della CPU mediante il metodo di strumentazioneQuando si utilizza il metodo di campionamento, si seleziona un contatore da utilizzare come evento da campionare.
I contatori delle prestazioni sono specifici della CPU.Le impostazioni di configurazione di una CPU per attivare uno stesso contatore delle prestazioni possono variare significativamente in base al modello e alla versione di CPU.Gli eventi portabili del profiler di Visual Studio 2012 disaccoppiano alcuni contatori delle prestazioni comuni da processori specifici e consentono di raccogliere o campionare eventi di prestazioni generici.
Se si desidera raccogliere dati per uno specifico evento con il profiler, ad esempio richieste non soddisfatte dalla cache L2, è possibile compilare una sessione di prestazioni relativa al mittente dell'evento.Ciò è possibile in qualsiasi CPU provvista di cache L2.La sessione di prestazioni può essere trasportata su diverse piattaforme senza bisogno di modifiche.
Il profiler di Visual Studio continua a supportare eventi specifici per una determinata piattaforma.Ad esempio, uno sviluppatore su una piattaforma Pentium 4 potrebbe voler contare gli eventi specifici relativi all'architettura NetBurst.Questo evento non è portabile, ma è disponibile per lo sviluppatore per una sessione di prestazioni specifica su una determinata piattaforma.
Eventi portabili e piattaforma
Gli eventi portabili costituiscono un gruppo di contatori della CPU non specifici di un determinato processore.Tutti gli altri contatori della CPU sono denominati eventi di piattaforma e potrebbero non essere supportati su piattaforme diverse.
I contatori per gli eventi portabili e di piattaforma sono definiti in file XML nei quali vengono indicati specifici valori relativi ai contatori.Esistono più file per le diverse CPU perché i dati per i processori AMD e INTEL, ad esempio, sono diversi.Queste informazioni vengono utilizzate dal profiler di Visual Studio 2008 per offrire i contatori appropriati, portabili e di piattaforma, per consentire un'accurata valutazione delle prestazioni.
Eventi portabili
Gli eventi portabili contengono i seguenti eventi:
Eventi generali
Nome evento |
Descrizione evento |
---|---|
Istruzioni ritirate |
Indica il numero di istruzioni che sono state eseguite fino al completamento dell'evento. |
Cicli non interrotti |
Indica solo i cicli nei quali il processore non è stato interrotto, ad esempio in attesa di I/O. |
Eventi front end
Nome evento |
Descrizione evento |
---|---|
Mancati riscontri ITLB |
Indica il numero di ricerche ITLB (Instruction Translation Look-aside Buffer) che hanno prodotto un mancato riscontro. |
Eventi creazione di un ramo
Nome evento |
Descrizione evento |
---|---|
Creazioni di rami ritirate |
Indica il numero di istruzioni di creazione rami eseguite fino al completamento dell'evento. |
Creazioni di un ramo stimate in modo errato |
Indica le creazioni di un ramo stimate in modo non corretto a causa della previsione di un percorso errato da parte del processore.Le creazioni di un ramo stimate in modo non corretto incidono sulle prestazioni perché il processore deve ignorare tutte le operazioni effettuate e iniziare nuovamente l'elaborazione utilizzando un percorso corretto. |
Eventi memoria:
Nome evento |
Descrizione evento |
---|---|
Richieste non soddisfatte lettura cache L2 |
Indica il numero di richieste non soddisfatte di lettura della cache di secondo livello. |
Riferimenti lettura cache L2 |
Indica il numero di riferimenti di lettura della cache di secondo livello.Include le richieste di caricamento e le richieste RFO (Read For Ownership) non soddisfatte e i riscontri. |
Visualizzazione dei contatori disponibili
È possibile elencare i contatori di CPU disponibili nell'IDE di Visual Studio in una finestra del prompt dei comandi.
Interfaccia utente di Visual Studio
Per elencare i contatori disponibili in un computer nell'IDE di Visual Studio, è necessario disporre di una sessione di prestazioni del profiler pubblica in Esplora prestazioni.
Per visualizzare un elenco di tutti i contatori di CPU supportati sulla piattaforma corrente
In Esplora prestazioni fare clic con il pulsante destro del mouse sulla sessione di prestazioni, quindi scegliere Proprietà.
Eseguire una delle operazioni seguenti:
Fare clic su Campionamento, quindi selezionare Contatore di prestazioni dall'elenco di eventi Campione.I contatori di CPU verranno elencati in Contatori di prestazioni disponibili.
Scegliere Annulla dinota per tornare alla configurazione di campionamento precedente.
In alternativa
Selezionare Contatori CPU, quindi Raccogli contatori CPU.I contatori di CPU verranno elencati in Contatori disponibili.
Scegliere Annulla dinota per tornare alla configurazione della raccolta di contatori precedente.
Per visualizzare un elenco di tutti i contatori di Windows supportati sulla piattaforma corrente
In Esplora prestazioni fare clic con il pulsante destro del mouse sulla sessione di prestazioni, quindi scegliere Proprietà.
Fare clic su Contatori Windows.
Selezionare Raccogliere contatori Windows.
Dall'elenco Categoria contatori, selezionare un gruppo di contatori.Il contatore relativo a Windows per il gruppo verrà visualizzato nella casella di riepilogo.
Scegliere Annulla dinota: per tornare alla configurazione della raccolta di contatori precedente.
Riga di comando
Con lo strumento da riga di comando VSPerfCmd è possibile elencare i contatori di CPU disponibili in un computer dalla riga di comando.
Per visualizzare un elenco di tutti i contatori di CPU supportati sulla piattaforma corrente
Aprire una finestra del prompt dei comandi.
Type
<Visual Studio Performance Tools Directory>\VSPerfCmd /querycounters
dove <Visual Studio Performance Tools Directory> è in genere il percorso della directory Performance Tools dell'installazione di Visual Studio in uso
C:\Programmi\Microsoft Visual Studio 10.0\Team Tools\Performance Tools
Vedere anche
Attività
Procedura: scegliere eventi di campionamento
Procedura: raccogliere dati dei contatori CPU tramite il metodo di strumentazione
Procedura: raccogliere i dati dei contatori Windows