Nvidia GPU passthrough – ESXi 6.7

It seems that there’s some confusion and a surprising lack of information regarding setting up Nvidia consumer GPU passthrough for ESXi 6.7. Here I will discuss what I had to do in order to get my consumer Nvidia 1050 Ti to work on my Windows 10 VM in my ESXi 6.7 DL380 G7 host.

Disclosure, the following tips and guides worked for me, your needs and requirements may differ. Therefore I urge you to use your best judgement before committing to anything provided in this guide.

Step 1: Installing the GPU

Fitting the GPU

When installing the GPU into an enterprise server or another rack mount case, there may not always be room for the card to sit perpendicular to the motherboard. In this situation I have had luck using PCIe risers in my HP machines. HP PCIe risers allow the GPU to sit parallel to the motherboard, easily allowing a GPUto slide in to the 2U case.

Please ensure when using a PCIe riser that the riser is capable of providing 75 Watts to the GPU, otherwise you will encounter issues!

Powering the GPU

If you’re using an enterprise rack mounted server, ensure the server’s PCIe slot can power the card otherwise some modification to the PSU may be required, or an additional PSU will need to be installed before the GPU can be powered via a 6 pin PCIe power adapter.

Typically, the PCIe slot on the motherboard can deliver 75 watts to the PCIe module attached. If your graphics card requires more than 75 Watts you will be required to power the GPU from the Power Supply using a 6-pin or 8-pin PCIe Power Connector. Obviously if you’re attempting to install the GPU in an enterprise server, the PSU may not have these cables available and you may need to either modify the existing PSU, replace the PSU with one that does support PCIe power, or add a second power supply to act as a dedicated power supple for the PCIe module.

Step 2: Configuring ESXi 6.7

Enabling Passthrough in ESXi

The first step after installing the power supply is ensuringthat the host, ESXi, can see the device installed.

Boot your ESXi host and navigate to “Host > Manage > Hardware” and searching for your Graphics Card. Once you have identified your Graphics Card you are ready to enable GPU Passthrough for the device. To do this select the GPU and select “Enable Passthrough”. The host machine will require a reboot before it can start passing the GPU through to Virtual Machines.

Virtual Machine Configuration

Add PCIe device to Virtual Machine

Open the ESXi web client, select “Edit” on the Virtual Machine you wish to enable the GPU on. Click on the “Add other Device” button and select “PCIe Device”. Select your GPU / PCIe device from the list.

Disable Hypervisor.CPUID.v0

Some users have found that in order to have their VMrecognise their Nvidia Graphics Card they are required to disable the“Hypervisor.CPUID.v0” flag.

In order to set this flag open your VM settings and navigate to “VM Options > Advanced > Edit Configurations” and add the flag:

Hypervisor.CPUID.v0 = “FALSE”

This flag determines whether the guest operating system is told by the host that it is running as a Virtual Machine. Disabling this flag prevents ESXi from telling the guest OS that it is a Virtual Machine.

FAQs

Q: I can see the GPU in Device Manager, but applications don’t seem to be / aren’t able to utilize the GPU?

A: Your it’s possible your GPU won’t function without having a monitor plugged in to it. In order to get around this you will need to either plug a monitor in to the GPU, or buy / build a headless plug.