VMware and hardware assisted virtualization… What’s the status?


VMware published a very interesting document regarding hardware assisted virtualization and BT (Binary Translation) also known as software assisted virtualization.

BT is where the hypervisor translates ALL calls to the hardware, there is no pass-through technique in this case.  That is used with old processor with no built-in virtualization extensions.

 

Nowadays with powerful processors with built-in virtualization extensions, we see more and more pass-through technique where actually the processor itself manages the virtual machine calls to the hardware.

 

VMware use this hybrid model with newer processor, and does BT with old ones or processor that doesn’t have virtualization extension, laptops for example.

BTW do you know that sometimes, you just need a BIOS hack to enable these features on your laptop 😉

 

VMware has supported Intel and AMD’s virtualization assist since 2006. Long before then we were using an all-software approach that we call binary translation (BT). With the benefit of years of development and optimization, BT outperformed the   early versions of hardware assist. But as hardware assist evolved the use of these new features became more attractive.

Because our support for hardware assist is rich and BT is heavily optimized, the monitor can benefit from using either technology in different situations. The following table details the defaults in ESX 4.0, which can be changed through VM settings if desired.

OS

Intel Nehalem and Newer

Intel Penryn-Nehalem

Intel Pre-Penryn

AMD Barcelona and Newer

AMD Pre-Barcelona

64-bit

VT+EPT

VT+SWMMU

VT+SWMMU

AMD-V+RVI

BT+SWMMU

32-bit Linux
32-bit FreeBSD

VT+EPT

BT+SWMMU*

BT+SWMMU*

AMD-V+RVI

BT+SWMMU

32-bit Windows

VT+EPT

VT+SWMMU

BT+SWMMU

AMD-V+RVI

BT+SWMMU

DOS
Windows 95 and 98
Netware
32-bit Solaris

BT+SWMMU

BT+SWMMU

BT+SWMMU

BT+SWMMU

BT+SWMMU


(*) Dynamically switches to VT+SWMMU if guest enters long mode.
With all other 32-bit OSes, vSphere again favors the hardware assistance provided by newer microprocessors. With processors older than Intel’s Nehalem and AMD’s Barcelona, the decision about which monitor to use is based on the presence of EM64T and AMD64, respectively.

 

OS

Intel Nehalem and Newer

Intel EM64T

Intel pre-EM64T

AMD Barcelona and Newer

AMD AMD64

AMD pre-AMD64

Other 32-bit OSes

VT+EPT

VT+SWMMU

BT+SWMMU

AMD-V+RVI

AMD-V+SWMMU

BT+SWMMU

Legend:

·      VT: Intel’s virtualization hardware assist.

·      EPT: Extended Page Tables. Intel’s on-board, virtualization-aware memory management unit (MMU).

·      EM64T: Intel’s 64-bit extensions to the x86 architecture.

·      SWMMU: ESX’s software memory management unt (i.e. not EPT or RVI.)

·      BT: ESX’s software virtualization capability, binary translation (i.e. not VT or AMD-V)

·      AMD-V: AMD’s virtualization hardware assist.

·      RVI: Rapid Virtualization indexing. AMD’s on-board, virtualization-aware memory management unit (MMU).

 

Advertisements

About PiroNet

Didier Pironet is an independent blogger and freelancer with +15 years of IT industry experience. Didier is also a former VMware inc. employee where he specialised in Datacenter and Cloud Infrastructure products as well as Infrastructure, Operations and IT Business Management products. Didier is passionate about technologies and he is found to be a creative and a visionary thinker, expressing with passion and excitement, hopefully inspiring and enrolling people to innovation and change.
This entry was posted in Uncategorized. Bookmark the permalink.

One Response to VMware and hardware assisted virtualization… What’s the status?

  1. Pingback: Top Posts In 2009 « DeinosCloud

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s