Check If CPU Supports Second Level Address Translation (SLAT)

Overview

Windows Server “8” Beta is now available for evaluation; you can download it from Microsoft.

Microsoft lists the system requirement for Windows 8 installation as follows:

  • Processor: 1 gigahertz (GHz) or faster
  • RAM: 1 gigabyte (GB) (32-bit) or 2 GB (64-bit)
  • Hard disk space: 16 GB (32-bit) or 20 GB (64-bit)
  • Graphics card: Microsoft DirectX 9 graphics device or higher

Other new Windows 8 features have some additional hardware requirements, but in this article I will focus on one of the specific requirements for the embedded Hyper-V feature that Windows 8 Client offers, which is to have a CPU with Second Level Address Translation (SLAT) capabilities. Note that SLAT can also be enabled at the BIOS.

Note: While SLAT is a requirement from the Windows 8 Client perspective (i.e. you cannot install the Hyper-V role on the Windows 8 Client without having a CPU that supports SLAT), it is NOT a mandatory requirement on Windows 8 Server (i.e. while lacking SLAT will affect VM performance, it is still possible to run the Hyper-V role on a Windows 8 Server without SLAT).

What is SLAT?

SLAT or Second Level Address Translation, is a technology that was applied on Intel and AMD processors.

Intel’s SLAT technology is represented as EPT (Extended Page Table). This technology is available in processors with virtualization support: core i7, i5, i3, Pentium G6950 and other appropriate Xeons. It is not available in Core 2 based or other earlier Intel processors.

AMD’s SLAT technology is represented as RVI (Rapid Virtualization Indexing) technology in their third generation Opteron processors codenamed Barcelona.

How to Check if Your Machine’s Processor Supports SLAT?

A cool and free Windows Sysinternals tool called Coreinfo (currently at v3.04) can help you check whether your CPU supports SLAT.

  • Download Coreinfo from: http://technet.microsoft.com/en-us/sysinternals/cc835722 and save it locally to your hard drive.
  • Open the command prompt with elevated credentials by clicking on Start -> type CMD, then right-click Command Prompt and select Run as administrator from the menu:

CPU Run As Administrator Screen

  • Browse to the location you saved the exe file you have just downloaded and type the following command:
    coreinfo.exe –v

In case your machine runs a CPU that support SLAT you will see an asterisk “*” next to EPT field as shown in the example below:

CPU Supports SLAT Asterisk

If your machine doesn’t run a CPU that supports SLAT you will not see the asterisk, but a minus “-“ appears instead, as shown in the example below:

CPU Does Not Support SLAT Example

Just for clarification, if you run coreinfo on an AMD based computer, you will get a value called NPT (Nested page Tables) instead of EPT. The asterisk appears or not whether it supports SLAT or not.

Conclusion

With this information, you can now move forward and install Windows 8 Client/Server beta on your computer, or choose to upgrade your CPU first, in order to enjoy the fantastic new capabilities of Hyper-V.