# Windows System Assessment Tool

The Windows System Assessment Tool (WinSAT) is a module of Microsoft Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10, and Windows 11 that is available in the Control Panel under Performance Information and Tools (except in Windows 8.1, Windows 10, and Windows 11). It measures various performance characteristics and capabilities of the hardware it is running on and reports them as a Windows Experience Index (WEI) score. The WEI includes five subscores: processor, memory, 2D graphics, 3D graphics, and disk; the basescore is equal to the lowest of the subscores and is not an average of the subscores. WinSAT reports WEI scores on a scale from 1.0 to 5.9 for Windows Vista, 7.9 for Windows 7, and 9.9 for Windows 8, Windows 8.1, Windows 10, and Windows 11.
The WEI enables users to match their computer hardware performance with the performance requirements of software. For example, the Aero graphical user interface will not automatically be enabled unless the system has a WEI score of 3 or higher.
The WEI can also be used to show which part of a system would be expected to provide the greatest increase in performance when upgraded. For example, a computer with the lowest subscore being its memory, would benefit more from a RAM upgrade than adding a faster hard drive (or any other component).
Detailed raw performance information, like actual disk bandwidth, can be obtained by invoking winsat from the command line. This also allows only specific tests to be re-run. Obtaining the WEI score from the command line is done invoking winsat formal, which also updates the value stored in %systemroot%\Performance\WinSAT\DataStore. (The XML files stored there can be easily hacked to report fake performance values.) The WEI is also available to applications through an API, so they can configure themselves as a function of hardware performance, taking advantage of its capabilities without becoming unacceptably slow.
The Windows Experience Index score is not displayed in Windows 8.1 and onwards because the graphical user interface for WinSAT was removed in these versions of Windows, although the command line winsat tool still exists and operates correctly along with a final score when launching the command "shell:games". According to an article in PC Pro, Microsoft removed the WinSAT GUI in order to promote the idea that all kinds of hardware run Windows 8 equally well.

## History

At the 2003 Game Developers Conference Dean Lester, Microsoft's General Manager of Windows Graphics and Gaming, stated in an interview with GameSpot that Microsoft intended to focus on improvements to the PC gaming experience as part of a new gaming initiative for the next version of Windows, Windows Vista, then codenamed "Longhorn." Lester stated that as part of this initiative the operating system would include a games folder that would centralize settings pertinent to gamers and, among other features, display driver streamlining, parental controls for games and the ability to start a Windows game directly from optical media during installation—in a manner similar to games designed for a video game console. Microsoft would also require a new method of displaying system requirements on retail packaging for Windows games with a rating system that would categorize games based on a numerical system. In 2004, Lester expanded further on Microsoft's intentions by stating that the company would work with hardware manufacturers to create PCs for Windows Vista that used a "level system" to designate the performance and capabilities of a system's hardware and that Xbox 360 peripherals would be fully compatible with the operating system. The Windows Experience Index feature in Windows Vista relies on measurements taken with WinSAT to provide an accurate assessment of a system's capabilities—these capabilities are presented in the form of a rating, where a higher rating indicates better performance.
Preliminary design elements created for Microsoft by Robert Stein in 2004 suggest that WinSAT was intended to rate a user's hardware during the out-of-box experience; this is a design decision that would be retained for the operating system's release to manufacturing.
During the Windows Hardware Engineering Conference of 2005, Microsoft formally unveiled the existence of WinSAT and presented it as a technology not only for games, but one that would allow Windows Vista to make decisions, such as whether to enable desktop composition, based on a machine's hardware capabilities. WinSAT would remain a key focus throughout development of the operating system before its release to manufacturing.

## Tests

WinSAT in Windows Vista and Windows 7 performs the following tests:
* Direct3D 9 Aero Assessment
* Direct3D 9 Batch Assessment
* Direct3D 9 Alpha Blend Assessment
* Direct3D 9 Texture Load Assessment
* Direct3D 9 ALU Assessment
* Direct3D 10 Batch Assessment
* Direct3D 10 Alpha Blend Assessment
* Direct3D 10 Texture Load Assessment
* Direct3D 10 ALU Assessment
* Direct3D 10 Geometry Assessment
* Direct3D 10 Constant Buffer Assessment
* Windows Media Decoding Performance
* Windows Media Encoding Performance
* CPU Performance
* Memory Performance
* Disk Performance (includes devices such as Solid-state drives)
While running, the tests show only a progress bar and a "working" background animation. Aero Glass is deactivated on Windows Vista and Windows 7 during testing so the tool can properly assess the graphics card and CPU.
In Windows 8, WinSAT runs under the maintenance scheduler every week. The default schedule is 1am on Sundays. The maintenance scheduler collates various OS tasks into a schedule so the computer is not being randomly interrupted by the individual tasks. The scheduler wakes the computer from sleep, runs all the scheduled tasks and then puts the computer back to sleep. During this weekly task, WinSAT runs long enough to detect if there have been any hardware changes. If so, then the tests are run again. If not, then WinSAT simply ends as the existing scores must be valid.
WinSAT cannot perform the above tests when a laptop is battery-operated.