Windows Performance Toolkit macht müdes Windows wieder munter
Windows 7 zu müde beim Start? Windows 8 zu träge? Das Windows Performance Toolkit, welches noch weitere Tools wie den “Performance Analyzer” beherbergt, findet Ursachen für ein träges Windows 7 und 8. In dem folgenden Artikel stellen wir das Toolkit und dessen Nutzung ausführlich vor.
Das Software Development Kit (SDK) ist für Software-Entwickler gedacht, doch im Paket ist ein Tool enthalten, welches auch für Windows-Nutzer von Interesse sein könnte, wenn ihr System Boot-Probleme hat. Das Windows Performance Toolkit, das noch weitere Tools wie den “Performance Analyzer” beherbergt, findet Ursachen für ein träges Windows 7 und 8.
Für Windows 7: “Microsoft Windows SDK for Windows 7 and .NET Framework 4”
Für Windows 8: “Windows Software Development Kit (SDK) für Windows 8”
Die Installation unter Windows 7
Eventuell erhalten Sie die Meldung, dass das Microsoft .NET Framework 4 noch nicht installiert ist. Da für die Nutzung des Windows Performance Toolkits das .NET Framework nicht gebraucht wird (sondern nur für andere Funktionen des Windows SDK) klicken Sie einfach auf [OK]. Der Download kommt als Web-Installer.

Meldung: .NET Framework 4 ist nicht installiert
Es öffnet sich der “Windows SDK Setup Wizard” – klicken Sie auf [Next].
Im darauffolgenden Lizenz-Dialog aktivieren Sie “I Agree” und gehen erneut auf [Next].
Es wird dann nach dem Programmverzeichnis gefragt – klicken Sie einfach auf [Next].
In diesem Dialog wählen Sie ALLE Optionen ab bis auf “Windows Performance Toolkit” unter “Common Utilities” (NICHT mit dem Windows Performance Toolkit unter “Redistributable Packages” verwechseln) – klicken Sie auf [Next] und nochmal auf [Next].
Jetzt beginnt der eigentliche Download. Es wird NUR das Windows Performance Toolkit heruntergeladen. Nach dem Download und der automatischen Installation klicken Sie nur noch auf [Finish]. Die Installation erkennt die Prozessorarchitektur Ihres Systems und installiert die richtige Bit-Version. Im Startmenü finden Sie dann den neuen Eintrag “Microsoft Windows Performance Toolkit” mit den Tools GPUView, Performance Analyzer und WPF Performance Suite.

Windows 7 Startmenü
Die Tools
Unter Windows 7 heißen die Tools
- GPUView (zur Analyse der Grafikkarte)
- Performance Analyzer oder XperfView (für Xperf und Xbootmgr)
- WPF Performance Suite
Die Suite für Windows 7 ist zur Leistungsprofilerstellung für “Windows Presentation Foundation” (WPF)-Anwendungen. Mithilfe der “WPF Performance Suite” können Sie das Laufzeitverhalten der WPF-Anwendungen analysieren und mögliche Leistungsoptimierungen ermitteln. Die Suite enthält die Leistungsprofil-Tools “Perforator” und “Visual Profiler”. Da wir hier näher auf Performance Analyzer eingehen wollen, verweisen wir auf die Microsoft-Seite, die die Suite gut erklärt: MSDN-Microsoft-WPF Performance Suite.
Das Tool “Windows-Leistungsaufzeichnung” (Windows Performance Recorder) für Windows 8 ist eine grafische Benutzeroberfläche (GUI) für die Kommandozeilen-Tools Xperf und Xbootmgr. Da die GUI in Deutsch und selbsterklärend ist, gehen wir nicht näher darauf ein. Auf der Microsoft-Seite ist das Tool umfangreich erklärt: MSDN-Microsoft Windows Performance Recorder.
Die interessantesten Tools sind eigentlich die Kommandozeilen-Tools Xperf und Xbootmgr und der Viewer Performance Analyzer, die wir hier näher beschreiben wollen.
Performance Analyzer
Das Tool Performance Analyzer (XperfView) zeigt Boot- und System-Protokolle grafisch oder tabellarisch an, um Bootprobleme und Windows-Hänger sichtbar zu machen. Zuerst werden die Protokolle in der Eingabeaufforderung (Shell) mit Adminrechten erstellt und dann mit XperfView ausgewertet.
Für Windows 7 sollten die Dienste “Defragmentierung” und “Superfetch” nicht deaktiviert sein.
System-Protokoll erstellen und auswerten
Mit dem Kommandozeilen-Tool Xperf protokollieren Sie sämtliche PC-Aktivitäten. Der Befehl in der Shell:
xperf -start -on DiagEasy
Nach [Enter] starten Sie ein paar Programme oder Tools, die Sie im Verdacht haben, Windows auszubremsen. Xperf läuft im Hintergrund und misst die Systemleistungen. In der Shell ist nichts zu sehen. Lassen Sie Xperf ein paar Minuten laufen. Xperf erstellt im Hintergrund das Protokoll so lange, bis Sie es beenden.
Zum Beenden geben Sie folgenden Befehl ein:
xperf –stop
Das System-Protokoll finden Sie nun unter C:\ mit dem Namen “kernel.etl“.
Die *.etl-Datei können Sie mit dem Performance Analyzer öffnen, über “File” – “Open” oder per Doppelklick und Auswahl des Performance Analyzer.
Für Windows 7
Es erscheint noch eine Sicherheitsmeldung, dass Performance Analyzer keine Spuren zurückverfolgt, da die etl-Datei auch persönliche Daten beinhaltet. Es werden mehrere Grafiken im Fenster angezeigt, die Sie nur vollständig sehen, wenn Sie mit der Bildlaufleiste nach unten gehen.
Ein Klick auf den grauen Menü-Pfeil ganz links im Fensterbereich öffnet eine Liste, über die Sie die Grafiken auswählen bzw. abwählen können. Über das kleine Menü rechts oben in jeder Grafik legen Sie fest, welche Daten angezeigt werden. Zum Vergleichen eignen sich immer 2 Grafiken.

Xperf: (Win7) System-Protokoll – Grafiken auswählen
Für Windows 7
Möchten Sie lieber die Daten in Tabellenform sehen statt in Grafiken, klicken Sie mit der rechten Maustaste ins Fenster und wählen im Kontextmenü “Summary Table”. Teilweise ist die tabellarische Ansicht übersichtlicher.
Bleiben wir aber zuerst bei den grafischen Ansichten. Wählen Sie im Menü “Graphs” die Option “CPU Usage by CPU” aus, so dass ein Häkchen erscheint. Führen Sie dann einen Rechtsklick auf die Grafik aus und im Kontextmenü wählen Sie “Overlay Graph” dann “Process Lifetimes” -> “All“.
Die Grafik von “Process Lifetimes” hat sich über die Grafik von “CPU Usage by CPU” gelegt. Sie sehen die Startzeiten (rote Raute) und Endzeiten (blaue Raute) von Prozessen sowie die CPU-Auslastung. So sehen Sie auf einen Blick, welcher Prozess für eine steigende CPU-Auslastung verantwortlich ist. Sie können die Grafiken auch heranzoomen, um genauere Ergebnisse zu erhalten. Dazu markieren Sie mit der Maus den Bereich, den Sie zoomen wollen, und klicken diesen mit der rechten Maustaste an. Mit dem Kontextmenü-Befehl “Zoom to Selection” starten Sie den Zoomvorgang. Sie können weitere Grafiken übereinanderlegen.
Die Grafik “CPU Usage by Process” macht anschaulich, wie stark ein Prozess oder eine Anwendung die CPU belastet. Der Mauszeiger zeigt über Tooltip weitere Details – in diesem Beispiel SearchFilterHost.exe (236). In Klammern steht die Prozess-ID. Wenn Sie den Taskmanager öffnen und über “Ansicht” – “Spalten auswählen” die Option “PID (Prozess-ID)” aktivieren, sehen Sie, dass die Prozess-ID 236 zum Beispiel zu SearchFilterHost.exe gehört.
Für Windows 7
Für die Anzeige ständiger Festplattenzugriffe ist die Grafik “Disk I/O” zuständig. Schreibvorgänge werden in orange und rot, Lesevorgänge in grün und blau dargestellt. Wenn Sie das Kontextmenü der Grafik “Disk I/O” aufrufen und “Detail Graph” wählen, sehen Sie die Einsprungspunkte des Schreib- und Lese-Kopfes auf der Magnetfestplatte. Wird viel auf der Festplatte gesprungen (graue dicke Streifen), kann das auf eine schlechte Defragmentierung hindeuten.

Xbootmgr: (Win7) Einsprungspunkte des Schreib- und Lese-Kopfes
Für Windows 7
Die Grafik “Disk Utilization by Process” zeigt die Anwendungen und Programme an, die besonders häufig auf die Festplatte zugreifen. Sie können Grafiken übereinanderlegen mit dem Kontextmenü “Overlay Graph”. Wenn Ihnen die Programme nichts sagen, hilft oft die Internet-Recherche weiter.

Xbootmgr: (Win7) Grafik Disk Utilization by Process
Für Windows 7
In der Logdatei “boot_BASE+CSWITCH_1.etl” (oder ähnlich) finden Sie die Grafiken “Services” und “Winlogon”.
Die Grafik “Services” sieht oben abgeschnitten aus. Bei der Grafik “Services” zeigt der grüne Punkt die Startzeit eines Dienstes an. Der rote Punkt zeigt, wann ein Dienst vollständig geladen wurde – nicht zu verwechseln mit dem Beenden des Dienstes. Die meisten Dienste laufen nach dem vollständigen Laden weiter. Der orangefarbene Punkt zeigt den noch ladenden Dienst an und die hellblauen Punkte sind Gruppen, die aber in der Tabellenform übersichtlicher zu sehen sind. Bremsklötze sind erkenntlich am langen Balken zwischen grünem und rotem Punkt.

Xbootmgr: (Win7) Grafik Services
Für Windows 7
Die Grafik “Winlogon” zeigt Dienste und Programme an, die während und nach der Windows-Anmeldung geladen werden. Hier können Sie nur die Start- und Endzeiten einsehen. Sind die Start- und Endzeiten weit auseinander, wissen Sie nun, warum Ihr Windows nach der Anmeldung noch eine Gedenkminute einlegt.

Xbootmgr: (Win7) Grafik Winlogon
Weitere Befehle
Mit dem Befehl xbootmgr –trace hibernate –resultpath C:\ protokollieren Sie den Start aus dem Ruhestand. Unter C:\ finden Sie die Protokolldatei, die in etwa “Hibernate_BASE+CSWITCH_” heißt und die Endung *.etl hat.
Mit dem Befehl xbootmgr -trace standby –resultpath C:\ protokollieren Sie den Start aus dem Standby-Modus. Unter C:\ finden Sie die Protokolldatei, die in etwa “Standby_BASE+CSWITCH_” heißt und die Endung *.etl hat.
Mit dem Befehl xbootmgr –trace shutdown –resultpath C:\ protokollieren Sie das Herunterfahren. Unter C:\ finden Sie die Protokolldatei, die in etwa “Shutdown_BASE+CSWITCH_” heißt und die Endung *.etl hat.
Windows 7 Systemstart optimieren und beschleunigen
Mit ReadyBoost – bietet Unterstützung zum Verbessern der Systemleistung
Mit dem Befehl: xbootmgr -trace boot -prepSystem -verboseReadyBoot können Sie das Booten von Windows 7 beschleunigen und optimieren (gilt nicht für SSD-Platten und Windows 8).
Die Dienste “Superfetch” und “Defragmentierung” sollten gestartet sein und auf “automatisch” stehen – nach einer ggf. notwendigen Änderung starten Sie Windows neu. Der ReadyBoost-Treiber wird automatisch vom Superfetch-Dienst geladen. ReadyBoost steht nicht mehr unter Dienste.
Durch diesen Befehl wird Windows 7 siebenmal neu gestartet. Der Kernel analysiert das Startverhalten. Beim 2. Neustart (-prepSystem) defragmentiert das Tool wichtige Boot-Dateien und verschiebt sie an den äußeren Rand der Festplatte. Beim 3. bis 6. Neustart (–verboseReadyBoot) analysiert ReadyBoot den Startvorgang und Xbootmgr weiß, welche Dateien in welcher Reihenfolge geladen werden müssen. In der Datei “Layout.ini” unter “C:\Windows\Prefetch” ist dann die optimale Reihenfolge von Xbootmgr verzeichnet, nach der Windows die Boot-Dateien einliest. Beim 4. Neustart erhalten Sie die Meldung, wo die Logdatei abgespeichert wird.
Sie sollten die Benutzerkontensteuerung deaktivieren und die automatische Windows-Anmeldung einrichten, damit die Neustarts automatisch ablaufen. Darüber hinaus sollten Sie während der Prozedur nichts am System machen – auch wenn Sie glauben, es geht nicht weiter. Benutzen Sie nicht die Maus oder die Tastatur. Die Prozedur dauert ca. eine halbe Stunde. Warten Sie alle 7 Neustarts ab.
Nach [Enter] erscheint schon das erste Fenster mit “Delaying for system preparation (run 6 of 6)“.
Dann kommt noch “Preparing system…” und “Saving prefetcher data…” und der Neustart wird angekündigt. Es wird von 6 heruntergezählt.
So geht es weiter bis “Delaying for system preparation (run 1 of 6)“.
Ein Neustart fehlt noch, insgesamt startet Windows sieben Mal. Dann ist die Optimierung abgeschlossen.
Nach dem 4. Neustart erhalten Sie die Meldung, dass die Logdatei “bootPrep_BASE+CSWITCH_3.etl” sich im Verzeichnis “C:\Windows\system32″ befindet und dass sie persönliche Informationen enthält.
Sie können die Logdatei per Doppelklick oder über Performance Analyzer (File – Open) öffnen. Wenn Sie die Logdatei direkt öffnen, werden Sie gefragt, ob Performance Analyzer als Viewer geöffnet werden soll, und die Grafik “Boot Phases” ist automatisch schon geladen. Ansonsten müssen Sie über den grauen Menü-Pfeil im Performance Analyzer noch die Grafik auswählen.
- Pre Session Init
Der Windows-Kernel initialisiert die Treiber, die für den Start von Windows notwendig sind (RAID- oder SATA-Treiber). Auf dem Bildschirm steht “Windows wird gestartet”. - Session Init
Hier werden die Registry und die restlichen Treiber initialisiert. Dann übernimmt Winlogon.exe die Kontrolle. Der schwarze Bildschirm, der zwischen Boot-Animation und Anmeldebildschirm erscheint, gehört zu dieser Phase. - WinLogon Init
Der Anmeldebildschirm wird angezeigt und der “Service Control Manager” startet die Dienste von Windows. Zum Schluss wird die Kontrolle an die Explorer.exe übergeben. - Explorer Init
Nach erfolgreicher Anmeldung wird der Desktop-Fenstermanager (DWM.exe) gestartet. Er initialisiert den Desktop und zeigt ihn an. - Post Boot
Der Desktop wird angezeigt und Sie können bereits eingeschränkt mit Windows arbeiten. Windows startet noch die restlichen Dienste im Hintergrund.
Laut Grafik und Tabelle beträgt die Windows-Startdauer nach Post Boot 62,25 Sekunden.
Aber hat die Optimierung wirklich etwas gebracht? Bevor wir anfingen, haben wir uns die Windows-Startdauer in der Ereignisanzeige “Diagnostics-Performance” angesehen. Die Startdauer von Windows betrug 70066 ms – also 70,06 Sekunden.
Nach der Optimierung sahen wir wieder nach. Die Startdauer von Windows betrug nun 61415 ms – also 61,42 Sekunden (laut “Boot Phases” 62,25 sec).
Windows 7 startet nun also 8,64 Sekunden schneller (laut Windows).
Um wie viel Xbootmgr den Boot-Vorgang an Ihrem PC beschleunigen kann, hängt davon ab, wie optimiert Ihr PC bereits ist. Windows 7 optimiert das System nämlich permanent, aber nur, wenn Sie nicht am PC arbeiten. Wird Ihr PC stets nur kurz eingeschaltet, weil Sie schnell Ihre E-Mails abrufen wollen, kommt es nie zu Selbst-Systemoptimierungen.
Mit xbootmgr –help erfahren Sie weitere Parameter und erhalten Erklärungen.
Wenn Sie Fehlermeldungen erhalten
Couldn’t find user-mode logger in active logger list.
Unable to stop trace.
Couldn’t find kernel logger in active logger list.
Es wird zwar eine *.log unter C:\ erstellt, sie sagt aber genauso wenig aus wie das Fenster. Schauen Sie in die Ereignisanzeige nach. Unter “Kernel-EventTracing” – “Protokollierung” oder “Sitzung” finden Sie entweder den Fehlercode 0xC0000188 oder “Die maximale zulässige Dateigröße für die Sitzung xxx wurde erreicht…”.
In Microsoft KB2001347 steht eigentlich fast das gleiche, aber leider ohne Lösung.
Die Lösung wäre, einfach die maximale zulässige Dateigröße für die Sitzung zu erhöhen.
Dies können Sie über die Registry oder über den Systemmonitor (perfmon) machen.
Über die Registry:
Unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\Autologger\ReadyBoot
erhöhen Sie den Eintrag MaxFileSize, der standardmäßig auf 14 (20 MB) steht, auf 60 (Dezimal) MB. Sollte das nicht reichen, erhöhen Sie weiter.
Über den Systemmonitor:
Start – Ausführen: perfmon.msc [OK]. Unter “Sammlungssätze” öffnen Sie den Ordner “Startereignis-Ablaufverfolgungssitzungen” und suchen ReadyBoot unter „Name” heraus. Unter “Status” sollte “Aktiviert” stehen. Falls nicht, öffnen Sie ReadyBoot mit einem Doppelklick und versehen unter der Registerkarte “Ablaufverfolgungssitzung” das Kästchen “Aktiviert” mit einem Häkchen. Unter der Registerkarte “Stoppbedingung” sehen Sie die maximale Größe von 20 MB. Erhöhen Sie auf 60 MB und klicken auf [Übernehmen]. Sollte das nicht reichen, erhöhen Sie weiter. Diese Einstellungen entsprechen dem Registry-Eintrag.