Capturing Windows boot performance with the Windows Performance Toolkit
The Windows Performance Toolkit, developed by Microsoft has 3 separate tools and are key to solving a lot of boot and general performance issues:
• Windows Performance Recorder
• Windows Performance Analyzer
• Xperf
Table of Contents
Download Windows Performance Toolkit
This can be downloaded by going to the Microsoft website and looking for the latest Windows Assessment and Deployment Toolkit for the operating system you want to analyze – for example: Windows 10
https://developer.microsoft.com/en-us/windows/hardware/windows-assessment-deployment-kit
Download and run, we only need the Windows Performance Toolkit portion of the ADK:
Once installed navigate to: C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit
Tip: You can copy the Redistributables folder if you need to install the Windows Performance Toolkit only on another computer.
Run Windows Performance Recorder
We only need too: WPRUI.EXE – Windows Performance Recorder & WPA.EXE – Windows Performance Analyzer.
Run WPRUI to launch Windows Performance Recorder
Change the Performance Scenario to Boot, and File
Select Resource Analysis and click CPU usage
Tip: You can add more: File I/O, Networking I/O, GPU usage etc if you know what in particular may be causing your boot slowness, the more you add the more data and complexity is added. I would recommend to only add additional resource analytics when required.
Click Start to select where your boot traces will go and click Ok to start your boot traces, this will restart your computer 3 times.
Tip: If you need to login, please make sure you login quickly during each trace as the longer you leave it unattended the more data and delay it will collect.
Run Windows Performance Analyzer
Once the computer has been restarted 3 times and your traces have been complete navigate back to: C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit and click on WPR.EXE to open the Windows Performance Analyzer or click Open in WPA from the Windows Performance Recorder dialog.
The Windows Performance Analyzer will be our canvas in analyzing issues, you can expand areas like System Activity to dig into Processes, Services. Just drag the data onto the Analysis screen to go through it
From here you can drill down into the data to find the cause or improvements for your login time, from here I can see one of the delays of my system is the CortanaUI.
I am running this on a 16GB i7 4GHZ machine running on an SSD so it isn’t really a good example, but have used this in the past to work out that my login was slow because Lync had logging turned on.
Hopefully this gets you through the first steps in diagnosis and resolving your performance issues.
Useful resources
Troubleshooting Windows Internals when unexpected events happen – https://channel9.msdn.com/events/Ignite/New-Zealand-2016/M405
Investigating website performance with Windows Performance Toolkit – https://github.com/MicrosoftEdge/MicrosoftEdge-Documentation/tree/master/performance-analysis/windows-performance-toolkit
Slow Boot Slow Logon (SBSL), A Tool Called XPerf and Links You Need To Read – https://blogs.technet.microsoft.com/askpfeplat/2012/06/09/slow-boot-slow-logon-sbsl-a-tool-called-xperf-and-links-you-need-to-read/