Measure Boot Performance with the Windows Assessment and Deployment Toolkit



Article written by Bhumit Shah, Premier Field Engineer at Microsoft India, who specializes in tuning Windows Server performance.


Common questions I hear from my customers are: “My desktops and laptops are taking long time to boot, can we find out why?” and “What can I do to increase my boot performance and how do I measure it?”

Well, Windows 8 introduces a new boot process (Fast startup) for a faster startup. Very detailed information about how Fast Startup works can be found at Delivering fast boot times in Windows. In this blog, I will explain how the Windows Assessment and Deployment toolkit (ADK) can assist you to understand what happens under the hood during this boot process. You can use this toolkit to either assess either a single computer or a group of computers.

Getting Started

To get started, you can download Windows ADK from this link and begin the installation. If web installer method is used, the installation time may vary according to the connection speed. Kindly follow the steps for installation as documented here. Please ensure you select both “Windows Assessment Services” and “Windows Performance Toolkit” during the installation wizard.

  1. Make sure you have a power source (if you’re testing a laptop) and not running on a battery.
  2. Configure Automatic logins. Configuration steps can be found here. Note that this should be done only while testing. Enabling Automatic Logons is not an encouraged action by Microsoft.

Data Collection

  1. After the installation of ADK, launch Windows Assessment Console from the start screen.
  2. Click on “Run individual assessments” and double click on “Boot Performance (Fast Startup)”. This will add the assessment to the left pane.
  3. You may tweak the settings to your own requirements, but for now we will run the job with the default settings.
  4. Click on “Run” to begin the assessment. This will reboot your machine several times.

Analyzing Results

Once the data collection is complete, Windows Assessment Console will launch the below screen with automated Analysis. To review any warnings, Click on Warnings. Since we are very interested in locating issues, I’ll first review the Issues. Please refer to the screenshot below; details for the individual levels are explained further here.

  • Green means that there are no perceived problems.
  • Yellow means that you can optimize the system, and that you can review the recommendations and analysis.
  • Red means that improvements are needed.

ADK results screen

 

Drilling down

Based on the above, we have already identified our first task which needs to be fixed – the BIOS initialization. Further, since we now know the new boot process during the fast startup, let’s review some important items here.

ADK results - details

So, what do we have so far? We know that the total boot duration excluding BIOS phase is 20.235 seconds:

  1. BIOS Initialization phase: This phase took more than 9 Seconds. It should generally not exceed the threshold of 4 Seconds. That’s certainly a point for investigation.
  2. Main Path Boot Duration: This is the time in seconds after BIOS phase completed and till Post On/Off Phase starts. Most of the boot activity takes place in this phase:
    • Hiberfile Read: Time taken to read from Hiberfile.sys file. In this case, it took around 6.08 Seconds
    • Resume Devices Duration: Time taken to resume the devices. Here, it took 1.378 seconds.
    • Winlogon Resume Duration: Time taken to Resume Winlogon. Logon, Profile load etc. operations happens in this phase, which took around 4.78 Seconds.
    • Explorer Initialization Duration: Time taken to load Windows Explorer, which is 0.367 seconds here.
  3. Post On/Off Duration: Activities once Explorer.exe was launched, like loading tray icons etc. 4.5 Seconds in this case.

Remember, that’s not the end, you can still further drill down to individual processes and drivers and look out for the resource consumption by each of them.

At this point, we have some clearly identified tasks (fix the Reds and Yellows Smile) to improve the boot performance of this system.

Further Reading

I hope you find this useful. Please do leave your comments and feedback in the Comments section below!


Posted by Arvind Shyamsundar, MSPFE Editor.

Comments (4)

  1. johndoeuf says:

    "At this point, we have some clearly identified tasks (fix the Reds and Yellows Smile) to improve the boot performance of this system."

    So what do we do now? What kind of ending is that?

  2. Titi says:

    What do you do next to fix the Reds????

  3. Sarath says:

    http://blogs.technet.com/b/mspfe/archive/2012/09/19/measure-boot-performance-with-the-windows-assessment-and-deployment-toolkit.aspx

    Above blog says that , we can say that there is some problem only if it shows red.

    In below image we can see red color for main path boot duration. But if we expand it, there is actually no red color but yellow.

    There is one yellow mark shown which made Main path boot duration go beyond threshold value. How can this happen?

    we have goals set for only two components, one is explorer initialization phase (1) and other is resume devices duration(2). Out of those two 1 is green and 2 is yellow, then total result should be yellow but not red.

    Again , yellow means not very ciritical and user can live with it.

    This all one part. Now after running test we are seeing light purple, medium purple and dark purple which is explained in below link.

    https://msdn.microsoft.com/en-us/library/windows/hardware/jj130841.aspx

    Details in this page maps light purple to green, medium to yellow and red to dark purple. Now again question is , after running ADK test. (Is this mapping correct?)

    if we see some exes are taking more than threshold value, (can find these by searching on windows assessment console page).

    how do debug those?

    1. What is the starting point for measuring that time? How it is decided?

    2. How are metrics defined? (<150 light purple / green , >150 – <300 medium purple / yellow , >300 is dark purple or red). what is the criteria.

    3. Does exe owner should have any job if it is seen in shutdown process? ( Since OS has control over shutdown process, I am assuming app owner can’t help here, please confirm)

    4. When will apps get started, after explorer initialization?