Hello,
I am testing some pass-through features in order to better the network latency of a virtual machine, those features being DirectPath I/O and SR-IOV (As per the whitepapper http://www.vmware.com/files/pdf/techpaper/latency-sensitive-perf-vsphere55.pdf)
The difference between both of them is quite unclear for me, when reading at VMware vSphere 5.1 it says :
SR-IOV offers performance benefits and tradeoffs similar to those of DirectPath I/O. DirectPath I/O and SR-IOV have similar functionalty but you use them to accomplish different things.
SR-IOV is beneficial in workloads with very high packet rates or very low latency requirements. Like DirectPath I/O, SR-IOV is not compatible with certain core virtualization features, such as vMotion. SR-IOV does, however, allow for a single physical device to be shared amongst multiple guests.
With DirectPath I/O you can map only one physical funtion to one virtual machine. SR-IOV lets you share a single physical device, allowing multiple virtual machines to connect directly to the physical funtion.
I have the impression that both allows you to achieve the same goal (i.e. having the devices mounted directly inside the guest OS by bypassing the kernel layer), however that SR-IOV allows multiple VMs to share the same physical device where DirectPath I/O allows only one VM to use the PCI device.
Am I correct?
Is there a difference in terms of performance between both features?
When should I use DP IO rather than SR-IOV?
Thanks,
Sevan