This blog was originally written by syama polui from DELL Windows Engineering Team. Comments are welcome! To suggest a blog topic or make other comments, contact

With the introduction of Windows Server® 2012, Microsoft® enabled Single Root I/O Virtualization (SR-IOV) support for networking devices in Hyper-V.

This article describes how to enable SR-IOV functionality on Dell™ PowerEdge™ servers.

Significant research and development effort in virtualization technology has been expended to increase the effective hardware resource utilization. Virtualization has helped improve hardware utilization tremendously, but its potential to fully maximize I/O devices and technologies has not yet been realized. Software-based sharing of hardware resources adds overhead to each I/O operation due to the emulation layer between the guest driver and the I/O hardware. To address this issue, PCI-SIG, the special interest group that owns and manages PCI specifications as open industry standards, introduced a suite of specifications for Single Root I/O Virtualization (SR-IOV) to allow multiple operating systems to share a physical interconnect.

The Single Root I/O Virtualization (SR-IOV) specification details how a single PCIe device can be shared between various guest operating systems. Devices capable of SR-IOV functionality support multiple virtual functions on top of the physical function.  The virtual function is enabled in the hardware as a light-weight PCIe function. The virtual function of an SR-IOV capable card can be directly assigned to the guest operating system. A virtual function driver running in the guest operating system manages this device.

Identify the SR-IOV Supported Platforms and NICs

Dell™ PowerEdge™ 12th Generation servers support the SR-IOV feature but previous generations have exceptions.

To find out which Dell 11th Generation PowerEdge servers and network cards support SR-IOV, visit:


Configure the BIOS Settings

Both Virtualization Technology and SR-IOV Global settings need to be enabled in the BIOS. The steps to enable both are as follows:

1. Update the BIOS to the latest version.

PowerEdge BIOS version released after June 20th 2012 has SR-IOV support. You can find minimum BIOS version needed on different Dell server platforms to support Microsoft Windows Server 2012 here. Obtain the latest BIOS from


2.   Enable the “Virtualization Technology” setting.

  • Restart the server.
  • During BIOS POST when the “DELL” screen displays, press F2 to enter System Setup.
  • Go to Processor Settings > Virtualization Technology and change the Virtualization Technology setting to Enabled.


 Virtualization Technology BIOS setting on 11th Generation servers: 


 Virtualization Technology BIOS setting on 12th Generation servers: 


3. Enable the “SR-IOV Global Enable” setting.

  • Go to Settings > Integrated devices and change the "SR-IOV Global Enable" setting to "Enabled".

SR-IOV Global Enable setting on 11th Generation servers:

SR-IOV Global Enable setting on 12th Generation servers:

4. Save the Settings

11th Generation servers: Press ESC  to go to the previous menu and one more ESC to save the settings


12th Generation servers: Press “Back” to go up a menu then click “Finish” and “Yes” to save settings.


Configure Hyper-V

The Hyper-V role in Windows Server 2012 supports the SR-IOV feature for networking devices. There are steps required to configure Hyper-V for SR-IOV that are beyond the scope of this blog. Please refer to this Microsoft blog for additional information on Hyper-v configuration.


SR-IOV technology in Windows Server 2012 Hyper-V provides flexibility with live migration and as a solution for workloads that need higher throughput, lower latency and lower CPU utilization for network traffic. SR-IOV implementation in Dell PowerEdge platforms is secure and easy to configure.


For more information about Dell and Microsoft Server 2012, go to: