VMware VMDirectPath I/O

Introduction

VMDirectPath I/O allows a guest operating system on a virtual machine to directly access physical PCI and PCIe devices connected to a host. Each virtual machine can be connected to up to two PCI devices. PCI devices connected to a host can be marked as available for passthrough from the Hardware Advanced Settings in the Configuration tab for the host.

VMDirectPath allows guest operating systems to directly access an I/O device, bypassing the virtualization layer. This direct path, or passthrough can improve performance for VMware ESXTM systems that utilize high‐speed I/O devices, such as 10 Gigabit Ethernet.

VMware unveils VMDirectPath technology, Intel to support it with Nehalem:

http://www.dabcc.com/article.aspx?id=8474

http://www.virtualization.info/2008/08/vmware-unveils-vmdirectpath-technology.html

Intel releases new CPUs and NICs with nested page tables and I/O virtualization:

http://www.virtualization.info/2009/03/intel-releases-new-cpus-and-nics-with.html

-


Configuration

Configuring VMDirectPath I/O pass-through devices on an ESX host - http://kb.vmware.com/kb/1010789

Configuration Examples and Troubleshooting for VMDirectPath - http://www.vmware.com/pdf/vsp_4_vmdirectpath_host.pdf

Configuration Examples and Troubleshooting for VMDirectPath

Configuring VMDirectPath IO with Cisco UCS and vSphere

-


Requirements

  • vSphere (well… common)

  • Intel Virtualization Technology for Directed I/O (VT-d)

  • AMD IP Virtualization Technology (IOMMU)

  • Devices must be connected to the host and marked available for pass through

  • VMs require hardware version 7

VMDirectPath I/O is experimentally supported for the following Storage and Network I/O devices:

  • QLogic QLA25xx 8 Gb Fibre Channel adapters

  • Emulex LPe12000 8 Gb Fibre Channel adapters

  • LSI 3442e-R and 3801e (1068 chip based) 3 Gb SAS adapters

  • Intel 82598 10 Gigabit Ethernet controller

  • Broadcom 57710 and 57711 10 Gigabit Ethernet controllers

VMware regularly adds support for new hardware. Check on HLC: http://www.vmware.com/resources/compatibility/search.php

Note that the VMware HCL describes servers, which are compatible to DirectPath - however the HCL does not document adapters, which can be used with this technology.

The "Configuration Examples and Troubleshooting for VMDirectPath" document covers a number of adapters - but seems to be a bit outdated.

-


Limitations

When using VMDirectPath you lose following features:

  • VMotion

  • Storage VMotion

  • FT

  • Device hot add

  • Suspend and resume

  • Record and replay

-


USB virtualization

If your server has support for device pass-through you may be able to provide USB access to Virtual Machines:

Enable USB Support for ESXi with VMDirectPath - http://vm-help.com/esx40i/VMDirectPath/USB_Setup.php

VMware ESXi4 and VMDirectPath - http://www.petri.co.il/vmware-esxi4-vmdirectpath.htm

Note that you give (if it works...) the entire USB chipset... so all the USB devices to a single VM!

-


Sources

Introduction from SimonLong Blog

http://www.simonlong.co.uk/blog/2009/08/03/vmware-vmdirectpath-io/

VMDirectPath? Paravirtual SCSI? – vSphere VM Options and You!

http://professionalvmware.com/2009/08/vmdirectpath-paravirtual-scsi-vsphere-vm-options-and-you/

Comments

Hi AndreTheGiant

Thanks for that overview.

Let me add, that the VMware HCL describes servers, which are compatible to DirectPath - however the HCL does not document adapters, which can be used with this technology.

The "Configuration Examples and Troubleshooting for VMDirectPath" document covers a number of adapters - but seems to be a bit outdated.

Do you know other sources for an updated list of VMDirectPath compatible adapters?

Thanks for your help

Matthias

I've add your notes.

Unfortunally, I haven't seen (yet) a site with an updated list of VMDirectPath compatible adapters.

Andre

After the release of vSphere 5 we really need some updated info on this. Will we ever see a list with supported NICs and storage adapters (and other devices)? Is the storage part still experimental in vSphere 5?

Looking at the vSphere 5 docs it seems as if you can now just use it for any PCI device: http://pubs.vmware.com/vsphere-50/topic/com.vmware.vsphere.networking.doc_50/GUID-BF2770C3-39ED-4BC5...

But strangely it's still only documented under Network...

Version history
Revision #:
1 of 1
Last update:
‎10-28-2009 11:10 PM
Updated by: