Summary
vSphere DirectPath I/O allows a guest operating system on a virtual machine to directly access physical PCI and PCIe devices connected to a host. This action gives you direct access to devices such as high-performance graphics or sound cards. You can connect each virtual machine to up to six PCI devices.
You configure PCI devices on the host to make them available for pass-through to a virtual machine. See the vSphere Networking documentation.
When PCI vSphere DirectPath I/O devices are available to a virtual machine, you cannot suspend, migrate with vMotion, or take or restore Snapshots of such virtual machines.
VMDirectPath I/O allows a guest operating system on a virtual machine to directly access physical PCI and PCIe devices connected to a host.
VMware recommends using DirectPath I/O only for workloads with very high packet rates, where CPU savings from DirectPath I/O may be needed to achieve desired performance.
Limitations
The following features are unavailable for virtual machines configured with DirectPath:
- Hot adding and removing of virtual devices
- Suspend and resume
- Record and replay
- Fault tolerance
- High availability
- DRS (limited availability. The virtual machine can be part of a cluster, but cannot migrate across hosts)
- Snapshots
Cisco Unified Computing Systems (UCS) through Cisco Virtual Machine Fabric Extender (VM-FEX) distributed switches support the following features for migration and resource management of virtual machines which use DirectPath I/O:
- vMotion
- Hot adding and removing of virtual devices
- Suspend and resume
- High availability
- DRS
- Snapshots
Prerequisites
- To use DirectPath, verify that the host has Intel Virtualization Technology for Directed I/O (VT-d) or AMD I/O Virtualization Technology (IOMMU) enabled in the BIOS.
- Verify that the PCI devices are connected to the host and marked as available for pass-through. However, if your ESXi host is configured to boot from a USB device, you should disable the USB controller for pass-through. VMware does not support USB controller pass-through for ESXi hosts that boot from USB devices or SD cards connected through USB channels. For more information, see http://kb.vmware.com/kb/2068645
- Verify that the virtual machine is compatible with ESXi 4.x and later.
Configuring pass-through devices
To configure pass-through devices on an ESX/ESXi host using the Web Client:
Select an ESX\ESXi host from the Inventory Lists of VMware vSphere Web Client.
In the PCI Devices tab, click the pencil to bring up the PCI Device Availability screen.
Select the devices and click OK. Note that the device won’t be available until the host is rebooted.
Clicking on the summary of the host we can see that the host requires a reboot.
Note: The configuration changes are saved in the /etc/vmware/esx.conf file.
The PCI slot number where the device was connected is 00:1A:0. It is recorded as: /device/000:000.26.0/owner = "passthru"
Note: 26 is the decimal equivalent of the hexadecimal 1A.
To configure pass-through devices on a virtual machine using the Web Client
From the Inventory in vSphere Web Client, ensuring that the VM is powered off right-click the virtual machine and click Edit Settings.
Click the New Device tab and choose PCI Device, click Add
We get warnings about the memory reservation not being set.
We now have all 4GB reserved for the VM.
Official Documentation
vSphere Virtual Machine Administration Guide v5.5
Configuring VMDirectPath I/O pass-through devices on a VMware ESXi 5.5 host