Befehlszeilenoptionen für Windows Performance Recorder
Windows Performance Recorder (WPR) bietet eine einfache Befehlszeilenschnittstelle. Die ganze Komplexität von WPR ist in die Aufzeichnungsprofile eingebettet.
Allgemeine Optionen
WPR erfordert Windows 8.1 oder eine höhere Version des Betriebssystems.
Syntax
wpr FirstLevelOption [<arguments>] [Additional options [<arguments>]]
Zusätzliche Hilfe erhalten Sie mit:
wpr -help [start | stop | status | profiles | providers | tracing | boottrace | heap | hardwarecounter | advanced]
Die folgenden FirstLevelOptions sind verfügbar:
Option | BESCHREIBUNG |
---|---|
-help | Gibt eine Liste mit Hilfeinformationen auf der Unterebene zurück. |
-profiles | Listet die Profilnamen und Beschreibungen aus einem Profil auf. |
-purgecache | Löscht den Cache mit den dynamischen Symbolen. |
-start | Startet mindestens ein Profil. |
-marker | Löst einen Ereignismarker aus. |
-markerflush | (Veraltet) Löst ein Ereignis aus und leert den Arbeitssatz. |
-status | Zeigt den Status einer aktiven Aufzeichnung an (sofern vorhanden). |
-profiledetails | Löst einen Ereignismarker aus und löscht den Arbeitssatz. |
-exportprofile | Exportiert ein integriertes Profil in eine Datei. |
-providers | Zeigt detaillierte Informationen zu Anbietern an. |
-cancel | Bricht die von WPR initiierte Aufzeichnung ab (sofern vorhanden). |
-stop | Bricht die von WPR initiierte Aufzeichnung ab (sofern vorhanden) und speichert sie. |
-merge | Führt ETL-Dateien in der angegebenen Datei zusammen. |
-flush | Löscht die von WPR initiierten Protokollierungssitzungen (sofern vorhanden). |
-log | Konfiguriert die Debuginformationen, die im Ereignisprotokoll gespeichert werden. |
-disablepagingexecutive | Ändert die Einstellungen in Auslagerungsausführung deaktivieren. |
-heaptracingconfig | Ändert die Einstellungen für die Heapablaufverfolgung eines Prozesses. |
-snapshotconfig | Ändert Momentaufnahmeeinstellungen eines Prozesses. |
-capturestateondemand | Erfasst die Zustände der konfigurierten Anbieter in der aktuellen Aufzeichnung. |
-pmcsources | Fragt die Liste der PMU-Ereignisse ab, die im System verfügbar sind. |
-pmcsessions | Fragt die Liste der Sitzungen ab, die PMU-Ereignisse verwenden. |
-setprofint | Legt das Profilintervall für Stichproben fest. |
-profint | Fragt das aktuelle Profilintervall ab. |
-resetprofint | Stellt die Standardwerte für das Profilintervall wieder her. |
-boottrace | Konfiguriert die Registrierungseinträge für Sitzungen mit automatischer/globaler Protokollierung. |
-enableperiodicsnapshot | Aktiviert regelmäßige Momentaufnahmen für das angegebene Intervall und die angegebene Prozess-ID. |
-disableperiodicsnapshot | Deaktiviert regelmäßige Momentaufnahmen für alle Prozesse. |
-singlesnapshot | Ruft eine bedarfsgesteuerte Momentaufnahme für den angegebenen Prozess ab. |
Profiles
Die Option Profiles listet die WPR-Profile auf, die bei der Aufzeichnung verwendet werden.
Syntax
wpr -profiles [<path>]
In der folgenden Tabelle werden die verfügbaren Argumente beschrieben, die Sie auf diese Option anwenden können. Um die integrierten Profile anzuzeigen, lassen Sie das Argument aus.
Argument | BESCHREIBUNG |
---|---|
<path> | Gibt den Pfad und den Namen der Datei an, die die Profildefinitionen enthält. Beispiel: wpr -profiles “c:\Users\User1\Documents\WPR Files\Custom Profiles\CustomProfile1.wprp” |
Start
Die Option Start startet eine Aufzeichnung mit mindestens einem Profil.
Syntax
wpr -start <profile> [-start <profilen>]... [-filemode] [-recordtempto <temp folder path>] [-onoffscenario <OnOff Transition Type>] [-onoffresultspath <path to which the trace files are saved>] [-onoffproblemdescription <description of the scenario>] [-numiterations <number of iterations for OnOff tracing>]
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | Beschreibung |
---|---|
<profile> [-start <profilen>]... | Gibt entweder ein integriertes Profil oder den Pfad zu einem benutzerdefinierten Profil an. Sie können auf einer einzelnen Befehlszeile bis zu 64 Profile angeben, wobei jedes Profil wie folgt angegeben wird: <profile> := [<filename.wprp>!]<profile name>[.{light|verbose}] Für jedes Profil kann eine eingeschränkte und/oder ausführliche Versionen definiert werden. Wenn keine Option angegeben ist, wird die ausführliche Version verwendet, es sei denn, das Profil enthält nur eine eingeschränkte Version. |
-shutdown [<KSR>] | Gibt an, dass Sitzungsinformationen und Aufzeichnungen über einen Neustart hinaus beibehalten werden. Die Option „shutdown“ funktioniert nur bei der Ablaufverfolgung im Dateimodus, während KSR nur im Speichermodus funktioniert. Rufen Sie beim nächsten Start den Befehl „-stop“ auf, um die Ablaufverfolgung zusammenzuführen. |
-filemode | Gibt an, dass die Aufzeichnung im Dateimodus erfolgt. (Standard ist der Speichermodus.) Mit dieser Option werden die Daten in einer ungebundenen Datei aufgezeichnet, die bis zur Größe des Datenträgers anwachsen kann. |
-recordtempto <temporärer Ordnerpfad> | Gibt den Pfad zu dem temporären Ordner an, in dem die Aufzeichnung gespeichert wird. |
-onoffscenario <Ein/Aus-Übergangstyp> | Gibt einen der Ein/Aus-Übergangstypen an. Dies sind: Boot, FastStartup, Shutdown, RebootCycle, Standby oder Hibernate. |
-onoffresultspath <Pfad, in dem die Trace-Dateien gespeichert werden> | Gibt den Pfad an, unter dem die Ablaufverfolgungsdateien gespeichert werden. |
-onoffproblemdescription <Beschreibung des Szenarios> | Gibt die Beschreibung des Szenarios an. |
-numiterations <Anzahl der Iterationen für die Ein/Aus-Aufzeichnung> | Legt die Anzahl der Iterationen für die Ein/Aus-Aufzeichnung fest. Standardmäßig werden die Einstellungen aus der Datei mit dem integrierten oder benutzerdefinierten Profil verwendet. |
Beispiel
wpr -start CPU (Starts verbose CPU profile in memory mode)
wpr -start CPU.light -filemode (Starts light CPU profile in file mode)
wpr -start filename.wprp!ProfileName.Verbose (Starts verbose ProfileName profile defined in filename.wprp)
Beenden
Die Option Stop beendet die aktuelle Aufzeichnung und speichert sie in der Datei, die durch das Argument angegeben wird.
Syntax
wpr -stop <file> <problem description> -[skipPdbGen] [-force] [-compress]
In der folgenden Tabelle werden die verfügbaren Argumente beschrieben, die Sie auf diese Option anwenden können.
Argument | Beschreibung |
---|---|
<file name> | Gibt die ETL-Datei (Event Trace Log, Ereignisablaufverfolgungsprotokoll) an, in der WPR die Aufzeichnung speichert. Dieses Argument ist erforderlich. |
<problem description> | Gibt die Beschreibung des Problems an. Dieses Argument ist zwar optional, es wird jedoch empfohlen, es zu verwenden. |
-skipPdbGen | Deaktiviert die dynamische Generierung von NGEN und eingebetteten PDBs für .NET-Module. Mit dieser Option können Sie die Dauer des Beendigungsvorgangs verringern. |
-force | Deaktiviert die Warnung, wenn die Zieldateierweiterung nicht „.etl“ lautet. |
-compress | Komprimiert die Ausgabedatei der Ablaufverfolgung. |
Zusammenführen
Die Option Merge führt ETL-Dateien in der angegebenen Datei zusammen.
Syntax
wpr -merge <trace files ...> <merged file> -[skipPdbGen] [-compress] [-supresspii] [-mergeonly] [-injectonly]
In der folgenden Tabelle werden die verfügbaren Argumente beschrieben, die Sie auf diese Option anwenden können.
Argument | Beschreibung |
---|---|
<trace files ...> | Gibt mindestens eine nicht zusammengeführte Ereignisablaufverfolgungsprotokolldatei (ETL) an. Dieses Argument ist erforderlich. |
<merged file> | Gibt die Ausgabedatei an, in der WPR die ETL-Dateien zusammenführt. |
-skipPdbGen | Deaktiviert die dynamische Generierung von NGEN und eingebetteten PDBs für .NET-Module. Mit dieser Option können Sie die Dauer des Beendigungsvorgangs verringern. |
-compress | Komprimiert die Ausgabedatei der Ablaufverfolgung. |
-supresspii | Unterdrückt personenbezogene Informationen (Personally Identifiable Information, PII). |
-mergeonly | Fügt die Ablaufverfolgungen zusammen, ohne computerspezifische Informationen oder Image-ID-Ereignisse hinzuzufügen. Es kann nicht mit „-injectonly“ zusammen verwendet werden. |
-injectonly | Generiert nur computerspezifische und/oder Image-ID-Ereignisse, ohne die ursprünglichen Ereignisse in die zusammengeführte Datei zu kopieren. |
Abbrechen
Die Option Cancel bricht die aktuelle Aufzeichnung ab, ohne die aufgezeichneten Daten zu speichern. Wenn derzeit keine Instanz aktiv ist, gibt die Option Cancel einen Fehler zurück.
Syntax
wpr -cancel
Diese Option akzeptiert keine Argumente.
Status
Die Option Status zeigt Statusinformationen zur aktuellen WPR-Aufzeichnung an.
Syntax
wpr -status [profiles] [collectors [-details]]
Wenn derzeit keine Aufzeichnung aktiv ist, wird eine Meldung angezeigt, dass WPR nichts aufzeichnet. Wenn derzeit eine Aufzeichnung aktiv ist und keine Argumente übergeben wurden, werden die folgenden Statusinformationen angezeigt:
WPR recording is in progress...
Time since start : 00:04:27
Dropped event : 0
Logging mode : Memory
Wenn Sie die Option -status mit Argumenten verwenden, werden die oben aufgeführten Informationen zusammen mit den Daten angezeigt, die für diese Option spezifisch sind. In der folgenden Tabelle werden die verfügbaren Argumente beschrieben, die Sie auf diese Option anwenden können.
Argument | Beschreibung und Beispielausgabe |
---|---|
profiles | Dieses Argument listet alle Profile auf, die in der aktuellen WPR-Aufzeichnung verwendet werden.
Beispiel: Systemaktivität zur Aufzeichnung, die den folgenden Satz von Profilen verwendet: |
collectors | Listet Sammlerinformationen auf. Falls Puffer verloren gegangen sind, werden diese Puffer aufgelistet.
Beispiel: Aktiv aufzeichnende Collectors: |
details | Listet zusätzliche Informationen zu jedem Sammler auf. |
Profiledetails
Die Option Profiledetails zeigt ausführliche Informationen zu einem Profil oder einer Gruppe von Profilen an. Um mehrere Profile anzugeben, verwenden Sie die folgende Syntax, in der <profilen> für den Namen jedes Profils steht.
Syntax
wpr -profiledetails <profile1>+<profile2>+...+<profilen> [-filemode] -onoffscenario <OnOff Transition Type>
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | BESCHREIBUNG |
---|---|
-filemode | Gibt an, dass die Aufzeichnung im Dateimodus erfolgt ist. (Standard ist der Speichermodus.) |
-onoffscenario <Ein/Aus-Übergangstyp> | Gibt einen der Ein/Aus-Übergangstypen an. Dies sind: Boot, FastStartup, Shutdown, RebootCycle, Standby oder Hibernate. |
ExportProfile
Die Option ExportProfile exportiert die integrierten Profile in die angegebene Datei. Verwenden Sie den Befehl wpr -Profiles
, um die verfügbaren integrierten Profile aufzulisten. Um mehrere Profile anzugeben, verwenden Sie die folgende Syntax, in der <profilen>
für den Namen jedes Profils steht. Die Namenskonvention der Profile ist mit der in wpr -start
identisch. Ein Profil wird mit <profile name>[.{light|verbose}]
angegeben.
Syntax
wpr -exportprofile <profile1>+<profile2>+...+<profilen> <ExportedFileName.wprp> [-filemode]
In diesem Beispiel wird das Dateimodus-Profil „GeneralProfile“ mit ausführlicher Ausgabe in die Datei „GeneralProfileVerboseFile.wprp“ exportiert.
Beispiel
wpr -exportprofile GeneralProfile d:\profiles\GeneralProfileVerboseFile.wprp -filemode
Anbieter
Die Option Providers zeigt ausführliche Informationen zu Anbietern an. Anbieter sind ETW-Komponenten (Ereignisablaufverfolgung für Windows), die Ereignisse für Windows Performance Recorder (WPR) verfügbar machen. Um Informationen zu Anbietern anzuzeigen, verwenden Sie die folgende Syntax, wobei -providers auf alle installierten/bekannten und registrierten Anbieter verweist.
Syntax
wpr -providers
Diese Option akzeptiert keine Argumente.
Boottrace
Die Option Boottrace konfiguriert die Registrierungseinträge für Sitzungen mit automatischer/globaler Protokollierung für das angegebene Profil.
Syntax
wpr -boottrace {-addboot [<filename.wprp>!]<profile> [-addboot <profile> ...] [-filemode] [-recordtempto <temp folder path>] | -stopboot <recording filename> <Problem description> | -cancelboot}
In der folgenden Tabelle werden die verfügbaren Schlüsselwörter beschrieben, die Sie auf diese Option anwenden können.
Argument | Beschreibung |
---|---|
-boottrace | Gibt an, dass mit dem folgenden Argument die automatische Protokollierung eingerichtet wird. In der aktuellen WPR-Version ist dieses Argument optional. |
-addboot | Legt die Registrierungseinträge für die automatische Protokollierung für das angegebene Profil fest. Der Befehl wpr -addboot verwendet dieselben Optionen wie der Befehl wpr -start . Beachten Sie, dass diese Optionen die Ablaufverfolgung nicht sofort starten. Nach dem Neustart wird die automatische Protokollierung vom Betriebssystem gestartet. |
-stopboot | Entfernt die automatische Protokollierung, die durch addboot konfiguriert wurde, beendet die Startaufzeichnung und führt alle Aufzeichnungen in der angegebenen Datei zusammen. Beachten Sie, dass diese Option die Ablaufverfolgung nur speichert, wenn die Sitzung mit automatischer Protokollierung ausgeführt wird (z. B. nach dem Neustart). Andernfalls entfernt diese Option nur die Konfiguration für die automatische Protokollierung. |
-cancelboot | Entfernt die automatische Protokollierung, die durch addboot konfiguriert wurde, und bricht die Startaufzeichnung ab, die von WPR initiiert wurde. |
CaptureStateOnDemand
Die Option CaptureStateOnDemand erfasst Zustände für die konfigurierten Anbieter in der aktuellen Aufzeichnung. Der Ereignisanbieter sollte in der Profildatei für capturestateondemand konfiguriert sein, während die Sitzung ausgeführt wird.
Syntax
wpr-capturestateondemand
Nachfolgend finden Sie ein Beispiel für EventProvider:
<EventProvider Id="EventProvider_Microsoft-Windows-Win32k" Name="Microsoft-Windows-Win32k" NonPagedMemory="true" CaptureStateOnly="true">
<CaptureStateOnDemand Timeout="5">
<Keyword Value="0x0"/>
</CaptureStateOnDemand>
</EventProvider>
Marker
Die Option Marker löst einen Ereignismarker mit dem angegebenen Text in der aktuellen Systemprotokollierungssitzung aus.
Syntax
wpr -marker <text> [-flush]
Argument | Beschreibung |
---|---|
-flush | Leert den Arbeitssatz. Entspricht -MarkerFlush. |
MarkerFlush (veraltet)
Die Option MarkerFlush löst einen Ereignismarker mit dem angegebenen Text aus und löscht den Arbeitssatz. Dieser Befehl ist im aktuellen WPR veraltet.
Syntax
wpr -markerflush <text>
Leerung
Die Option Flush löscht Protokollierungssitzungen in Dateien, die über WPR initiiert wurden.
Syntax
wpr -flush
Diese Option akzeptiert keine Argumente.
HeapTracingConfig
Die Option HeapTracingConfig aktiviert oder deaktiviert die Heapablaufverfolgung für einen bestimmten Prozess oder ein Speicheranwendung.
Syntax
wpr -HeapTracingConfig <process name> [<package full name> <package relative app ID>] [{enable|disable}]
Hinweis
- Wenn der {enable|disable}-Parameter nicht angegeben wurde, wird die aktuelle Konfiguration der Heapablaufverfolgung für den Prozess oder die App angezeigt. Beispiel:
wpr -HeapTracingConfig Heaptest.exe enable
- Dieser Befehl startet die Ablaufverfolgung nicht sofort und sollte daher ausgeführt werden, bevor Sie die Heapablaufverfolgung ausführen. Weitere Details finden Sie unter Aufzeichnen der Heapanalyse.
- Deaktivieren Sie HeapTracingConfig für den Prozess immer, nachdem die Ablaufverfolgung abgeschlossen wurde, da sie die Leistung des Prozesses beeinflussen kann.
Disablepagingexecutive
Die Option Disablepagingexecutive gibt an, ob Treiber und Systemcode im Kernelmodus auf den Datenträger ausgelagert werden können. Durch Festlegen dieser Option auf on wird die Auslagerung verhindert. Diese Option legt den Wert von DisablePagingExecutive in der Registrierung fest.
Syntax
wpr -disablepagingexecutive {on | off}
Hinweis
Wenn Sie Ereignisstapel auf 64-Bit-Systemen mit Windows 7 ordnungsgemäß erfassen möchten, sollte disablepagingexecutive auf On festgelegt werden. Außerdem muss das System neu gestartet werden, bevor Sie die Leistungsaufzeichnung starten. Auf 32-Bit-Systemen unter Windows 7 und auf allen Systemen unter Windows 8 oder höher können Sie die Leistungsaufzeichnung ausführen, ohne disablepagingexecutive auf On festzulegen.
Log
Die Option Log konfiguriert die Debugprotokollierung und fügt sie an die Ereignisprotokollierung an.
Syntax
wpr -log {enabled | disabled | remove}
In der folgenden Tabelle werden die verfügbaren Schlüsselwörter beschrieben, die Sie auf diese Option anwenden können.
Schlüsselwort | Beschreibung |
---|---|
enabled | Aktiviert die Debugprotokollierung im Ereignisprotokoll |
deaktiviert | Deaktiviert die Debugprotokollierung im Ereignisprotokoll |
remove | Deinstalliert das Anbietermanifest für die WPR-Debugprotokollierung vom System |
Purgecache
Die Option Purgecache löscht den Cache für verwaltete Symbole.
Syntax
wpr -purgecache
Diese Option akzeptiert keine Argumente.
Hilfe
Verwenden Sie diese Option, um die Onlinehilfe im Eingabeaufforderungsfenster anzuzeigen.
Syntax
wpr -help [start | stop | status | profiles | providers | tracing | boottrace | heap | hardwarecounter | advanced]
In der folgenden Tabelle werden die verfügbaren Schlüsselwörter beschrieben, die Sie auf diese Option anwenden können.
Schlüsselwort | Beschreibung |
---|---|
Kein Schlüsselwort | Zeigt eine Liste der Optionen mit Kurzbeschreibungen an. Um weitere Hilfe zu bestimmten Optionen zu erhalten, verwenden Sie ein Schlüsselwort. Beispiel: wpr -help start . |
start | Beschreibt das Befehlszeilenargument -start. Weitere Informationen finden Sie unter Start. |
stop | Beschreibt die Befehlszeilenargumente -stop, -merge und -cancel. |
status | Beschreibt das Befehlszeilenargument -status. Weitere Informationen finden Sie unter Status. |
profiles | Beschreibt die Befehlszeilenargumente -profile, -profiledetails und -exportprofile. |
providers | Beschreibt das Befehlszeilenargument -providers. Weitere Informationen finden Sie unter Providers. |
tracing | Beschreibt die Befehlszeilenargumente -marker, -flush und -capturestateondemand. |
boottrace | Beschreibt die Befehlszeilenargumente -addboot, -stopboot und -cancelboot. |
heap | Beschreibt die Befehlszeilenargumente -heaptracingconfig, -snapshotconfig, -enableperiodicsnapshot, -disableperiodicsnapshot und -singlesnapshot. |
hardwarecounter | Beschreibt die Befehlszeilenargumente -pmcsources, -pmcsessions, -setprofint, -profint und -resetprofint. |
advanced | Beschreibt die Befehlszeilenargumente -purgecache, -log, -disablepagingexecutive, -instancename und -container. |
SnapshotConfig
Die Option SnapshotConfig aktiviert oder deaktiviert die Möglichkeit, einmalige oder regelmäßige Momentaufnahmen mit der <snapshot option>\ für einen oder mehrere festgelegte Prozesse zu erfassen. Derzeit können Sie Momentaufnahmen des Heaps aufzeichnen.
Syntax
wpr -SnapshotConfig <snapshot option> {-name <process name> | -pid <pid 1> [pid 2] ...} [{enable|disable}]
Wenn der {enable|disable}
-Parameter nicht angegeben wurde, wird die aktuelle Momentaufnahmekonfiguration für den Prozess angezeigt (d. h. nur die Option -name).
In diesem Beispiel wird der Befehl snapshotconfig mit Imagenamen verwendet:
wpr -snapshotconfig heap -name Win32Project1.exe //query snapshot config
wpr -snapshotconfig heap -name Win32Project1.exe enable //enable snapshot config
wpr -snapshotconfig heap -name Win32Project1.exe disable //disable snapshot config
In diesem Beispiel wird der Befehl snapshotconfig mit einer PID verwendet:
wpr -snapshotconfig heap -pid 8048 enable //enable snapshot config
Hinweis
Wenn der Prozess und die Betriebssystemarchitektur nicht übereinstimmen (z. B. eine Win32-App auf einem 64-Bit-Betriebssystem), verwenden Sie die Option mit dem Imagenamen.
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | BESCHREIBUNG |
---|---|
<snapshot option> | Gibt einen der Optionstypen für Momentaufnahmen an. Derzeit ist nur „Heap“ verfügbar. |
-name | Gibt den Namen des Prozesses an. Dieser Schalter kann nicht mit dem Schalter -Pid verwendet werden. Wenn dieser Schalter verwendet wird, um die Momentaufnahme zu aktivieren, wird die Konfiguration auf alle neuen Instanzen des angegebenen Prozessnamens angewandt. Deaktivieren Sie sie unbedingt, nachdem die Tests abgeschlossen wurden. |
-pid | Gibt die Prozess-ID an. Dieser Schalter kann nicht mit dem Schalter „-name“ verwendet werden. Wenn dieser Schalter verwendet wird, um die Momentaufnahme zu aktivieren, wird die Konfiguration sofort und für die gesamte Lebensdauer des Prozesses angewandt. |
SingleSnapshot
Die Option SingleSnapshot löst eine bedarfsgesteuerte Momentaufnahme mit der <snapshot option> für die angegebene Prozess-ID aus.
Syntax
wpr -SnapshotConfig <snapshot option> <pid 1> [pid 2] ... [up to pid 8]
Hinweis
Das Momentaufnahmefeature muss vor dem Aufrufen von SingleSnapshot für die Prozess-ID (oder den Namen) aktiviert werden.
Beispiel: wpr -singlesnapshot heap <pid for foo.exe>
Weitere Informationen finden Sie unter dem Befehl SnapshotConfig.
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | BESCHREIBUNG |
---|---|
<snapshot option> | Gibt einen der Optionstypen für Momentaufnahmen an. |
<pid> | Gibt die Prozess-ID an. |
EnablePeriodicSnapshot
Die Option EnablePeriodicSnapshot löst regelmäßige Momentaufnahmen in festgelegten Intervallen für bestimmte Prozess-IDs aus.
Syntax
wpr -enableperiodicsnapshot <snapshot option> <interval (in seconds)> <pid 1> [pid 2] ... [up to pid 8]
Hinweis
Das Momentaufnahmefeature muss vor dem Aufrufen von SingleSnapshot für die Prozess-ID (oder den Namen) aktiviert werden.
Beispiel: wpr -enableperiodicsnapshot heap 60 <pid for foo.exe>
Weitere Informationen finden Sie unter dem Befehl „SnapshotConfig“.
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | BESCHREIBUNG |
---|---|
<snapshot option> | Gibt einen der Optionstypen für Momentaufnahmen an. |
<interval> | Gibt das Intervall in Sekunden an. Beachten Sie, dass das kürzeste gültige Intervall 5 ist. |
<pid> | Gibt die Prozess-ID an. |
DisablePeriodicSnapshot
Die Option DisablePeriodicSnapshot deaktiviert regelmäßige Momentaufnahmen für alle Prozesse, die durch die Option enableperiodicsnapshot angegeben wurden.
Syntax
wpr -disableperiodicsnapshot <snapshot option>
Beispiel
wpr -disableperiodicsnapshot heap
In der folgenden Tabelle werden die verfügbaren Schalter beschrieben, die Sie auf diese Option anwenden können.
Schalter | BESCHREIBUNG |
---|---|
<snapshot option> | Gibt einen der Optionstypen für Momentaufnahmen an. |
PMCSources
Die Option PMCSources fragt die Liste der PMU-Ereignisse (Performance Monitoring Unit, Leistungsüberwachungseinheit) im System und deren Standardintervallwert für den Zählerüberlauf ab. Das Intervall ist die Anzahl der Ereignisse.
Syntax
wpr -pmcsources
Hinweis
PMU-Ereignisse (Performance Monitor Unit, Leistungsüberwachungseinheit) werden verwendet, um die CPU-Leistung zu messen und die CPU-Charakterisierung von Workloads zu verstehen. In Windows HAL ist nur eine Teilmenge der PMU-Ereignisse aus den Arm/Intel-Referenzdokumenten implementiert. Im Folgenden finden Sie die Beispielausgabe dieser Option auf Geräten mit einer Intel-CPU:
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit>wpr -pmcsources
Id Name Interval Min Max
--------------------------------------------------------------
0 Timer 10000 1221 1000000
2 TotalIssues 698400 4096 2147483647
6 BranchInstructions 65536 4096 2147483647
10 CacheMisses 65536 4096 2147483647
11 BranchMispredictions 65536 4096 2147483647
19 TotalCycles 65536 4096 2147483647
25 UnhaltedCoreCycles 65536 4096 2147483647
26 InstructionRetired 65536 4096 2147483647
27 UnhaltedReferenceCycles 65536 4096 2147483647
28 LLCReference 65536 4096 2147483647
29 LLCMisses 65536 4096 2147483647
30 BranchInstructionRetired 65536 4096 2147483647
31 BranchMispredictsRetired 65536 4096 2147483647
32 LbrInserts 65536 4096 2147483647
PMCSessions
Die Option PMCSessions fragt die Liste der Sitzungen ab, die Hardwarezähler verwenden. Diese Option ist nur für Windows 11 oder höher verfügbar.
Syntax
wpr -pmcsessions
ProfInt
Die Option ProfInt fragt das Intervall für die Profilerstellung ab.
Syntax
wpr -profint
Beispiel
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit>wpr -profint
Current Profile Interval = 10000 [1.0000ms]
SetProfInt
Die Option SetProfInt legt das Profilintervall für Stichproben von PMU-Ereignissen fest. Wenn kein PMU-Ereignisname angegeben wird, lautet der Standardwert „Timer“.
Syntax
wpr -setprofint [PMU event name] 1221...10000000
Beispiel
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit>wpr -setprofint 100000
New Profile Interval = 100000 [10.0000ms]
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit>wpr -setprofint TotalIssues 1000000
New Profile Interval = 100000 [Counter: TotalIssues]
ResetProfInt
Die Option ResetProfInt setzt das Profilintervall auf den Standardwert zurück.
Syntax
wpr -resetprofint [Profile Source Name]
Beachten Sie, dass, wenn [Profile Source Name] nicht angegeben wird, alle Profilquellen auf den Standardwert zurückgesetzt werden.
Instancename
Die Option Instancename gibt einen Namen an, der die Ablaufverfolgungsinstanz eindeutig identifiziert.
Diese Option kann auf alle Befehle angewandt werden, die eine Protokollierungssitzung ändern, um einen benutzerseitig bereitgestellten Namen für die Protokollierungssitzung zuzuweisen. Wenn diese Option nicht angegeben wird, legt WPR den Standardsitzungsnamen fest.
Syntax
wpr –{option <arguments>} -instancename <text>
Hinweis
-instancename muss der letzte Parameter sein. Wenn die Protokollierungssitzungen mit dieser Option gestartet wurden, sollten alle nachfolgenden Befehle dieselbe Option „instancename“ verwenden. Beispiel:
C:\wpt>wpr -start cpu -instancename CpuSession
C:\wpt>wpr -status -instancename CpuSession
WPR recording is in progress...
...
Time since start : 00:00:05
Dropped event : 0
Logging mode : Memory
C:\wpt>wpr -stop cpu.etl -> omitting instancename option would not find CpuSession
There are no trace profiles running.
Error code: 0xc5583000
C:\wpt>wpr -stop cpu.etl -instancename CpuSession -> trace will be saved
Bemerkungen
Jedes Mal, wenn WPR eine Ablaufverfolgung speichert, die erfasst wurde, während verwaltete Anwendungen auf dem System ausgeführt wurden, speichert WPR verwaltete Symbole mit der Ablaufverfolgungsdatei. Dieses Feature aktiviert die Leistungsanalyse verwalteter Anwendungen.
Das Generieren verwalteter Symbole ist ein ressourcen- und zeitintensiver Vorgang. WPR erstellt automatisch einen Cache für verwaltete Symbole, um das Generieren verwalteter Symbole zu beschleunigen. Wenn WPR verwaltete Symbole benötigt, überprüft es zuerst diesen Cache und verwendet alle verfügbaren und geeigneten Symbole, anstatt neue zu generieren.
Der Standardspeicherort für den Cache mit verwalteten Symbolen ist „C:\ProgramData\WindowsPerformanceRecorder\NGenPdbs_Cache“.