Enable SR-IOV for NIC in ESXi on Supermicro host machine
Most virtualization options are enabled by default on our mainboards to ensure this please load BIOS optimized defaults. Only SR-IOV and ASPM are disabled by default which is needed for virtualization off PCIe cards. To enable this feature go into the bios to the menu
Advanced\PCIe\PCI\PnP Configuration set SR-IOV support to “Enabled”, and set ASPM Support to “Enabled”.
SR-IOV is required CPU with IOMMU (VT-d or AMD-V) support. User can initially check CPU feature support list. With Intel CPU, please check Intel ark,
Second, system BIOS is also required to support. Intel Virtualization Technology (VT) with enabled state. VT-d to enabled state ACS support and AFI forwarding (for some paritcular cards, such as nVidia T4) In addition, network adapter, controller or LOM are required to support SR-IOV capability. For Intel network NIC, user can check the article with supported matrix,
Supermicro X10/X11 dual processors and multiple processors motherboards will support SR-IOV in supported Windows and Linux OS matrix chart. User can check Supermicro compatiblity chart for best practice.
Trying to deploy SR-IOV with X10 UP may suffer from failure of assignment due on ACS support inside Windows, this is due on limitation of the support from PEG and C220 series PCH. For X10 UP, such as X10SL7-F/X10SLE-DF/X10SDD-16C-F/X10SDD-F/X10SLA-F/X10SLD-F/X10SLD-HF/X10SLE-F/X10SLE-HF/X10SLH-F/X10SLL+-F/X10SLL-S/X10SLL-SF/X10SLM+-F/X10SLM+-LN4F/X10SLM-F, the default LOM/MicroLP network controller of those boards is with i210 mostly. Intel i210 does not support SR-IOV feature. X10 UP PEG does not support SR-IOV, either.
Using X11 UP, such as X11SCD-F/X11SCE-F/X11SCH-F(-LN4F)/X11SCL-F/X11SCL-IF/X11SCL-LN4F/X11SCM-F/X11SSL-nF/X11SSM-F/X11SSL-F/X11SSL-CF/X11SSL/X11SSi-LN4F/X11SSH-TF/X11SSH-LN4F/X11SSH-F/X11SSH-CTF/X11SSE-F/X11SSD-F/X11SSA-F, those boards will be supported by Linux with pass-through and SR-IOV, according to Linux article,
For Windows DDA in X11 UP, it's not supported due on ACS missing by running "Get-NetadapterSriov" command.
If users use AMD platform, please check this FAQ for AMD SR-IOV support.