Server 2012 Hyper-V VT-d /IOMMU How?

moetop

[H]ard|Gawd
Joined
Apr 8, 2004
Messages
1,471
I have a motherboard and processor that supports VT-d. In ESX-i I was able to redirect a pci-e card to a specific virtual machine, It did have problems and did not work completely, but the VT-d did seem to be redirecting the card. I was able to install the drivers, and it looked good in device manager.

I can not find anything on server 2012 Hyper-V and how to take a card and make it available to a specific machine.. This is the same exact machine mentioned above, where VT-d seemed to be nearly working.

Where are the settings in Server 2012 Hyper-V? Any hints on this.

Yes I Googled the crap out of this. Some info I have read describe network controllers, with no real examples on how to accomplish this.
 
I've never seen support for directed IO in hyper-v beyond disk pass-through.
 
I don't think Hyper-V does a specific PCI card to a specific guest. If it does I haven't heard of it. The Directed IO thing they do support is SR-IOV, in particular for NICs. For that you need a NIC that supports it (higher end Intel server NICs do like the X540 and I350). You then need to install drivers that support it, and turn it on for the host, then allocate queues to it. There are a limited number, 7 per interface on the 350, 64 per interface on the 540.

Then you create a network using that net adapter in Hyper-V, and when you create it (and only when you create it) you can select to enable SR-IOV for it. Finally, on the VMs themselves in advanced network settings, you enable SR-IOV for the VMs you want. It is disabled by default on account of the limited number of queues, so you only use it for high IO systems.

On any VM this is enabled on, it basically has direct, but shared, access to the NIC, reducing load on the host.

However I've seen no facility to just say "This PCI card gets assigned to this guest, pass it straight through." I don't think Hyper-V can do that.
 
Back
Top