My NVIDIA GTX 1060 (6GB) GPU seems to be installed properly in the PowerEdge T640, although I have no way to test it. I used this link to guide me in my effort to passthrough my GPU in VMWare ESXi to an existing Windows 10 Pro VM that I intend to use for gaming. But, it didn’t get me all the way to success. I also did hours of other web searches and keyboard pounding to get it working.
Configuring GPU Passthrough
Following are the specific steps to passthrough a GPU in ESXi 7:
- In the vSphere Web Client, I went to Host -> Manage -> Hardware -> PCI Devices and scrolled until I found the GPU:
- Under the “Passthrough” column, I clicked to change the value to “Active”
- Reboot ESXi
- Went back to PCI Devices and made sure Passthrough is set to Active
- Shut down the VM that I want to pass the GPU to
- Select the VM -> Edit Settings -> VM Options -> Advanced -> Edit Configuration -> Add parameter: Key =
FALSE(this setting tells my VM that it isn’t a VM which resolves a few issues that I encountered)
- Click OK
- Select Virtual Hardware -> Add other device and select my GPU (and High Definition audio, if applicable)
- Click Save
- Power On my VM (I may have rebooted ESXi before doing this)
- I think this part is optional, but I downloaded NVIDIA’s GPU software on my VM and had it update my drivers.
It’s possible that I left something out because this whole process took me several days of trial and error.
Very Important Lessons
After going through the process of getting this to work, I learned some very important things. They are detailed below.
vSphere Console Black and/or Unresponsive
First, when this WORKS PROPERLY (properly meaning as I wanted it to, of course), I lost my ability to view the VM through the vSphere Console. I can usually see an image of the desktop in the console, but it is not interactive and it doesn’t come up right away. It’s usually just black. Interestingly though, I can still use the remote desktop functionality in Windows 10 Pro and connect to the desktop remotely just fine that way.
DisplayPort Output Doesn’t Work
Second, after many hours of head pounding against hard surfaces, I figured out the DisplayPort(s) never give me output. Only the HDMI will output to my monitor. I have a new Dell U2719D Monitor that came with a DisplayPort cable that did not give me signal on any of the three ports on my GPU. I don’t know why, yet, but I do plan to go figure it out and I will write about it when that happens.
RDP Only Works when Not Connected to a Display
Third, if there is no (functional) monitor connected to the GPU, I was able to use RDP to connect to the VM. I could run software and see that it was using the GPU to process the graphics. For example, I could run Genshin Impact and get about 42 fps with a not-so-great visual experience–but it was absolutely playable. The Not Lawlors do not consider it playable, but I was technically able to play it. I tested a small Steam game, “Subnautica: Below Zero” and was able to get much better fps and a much better experience via RDP. I probably won’t dig too far into this, as this isn’t my intended use case, but my 144hz monitor was only processing these games at 32hz via RDP.
Mouse & Keyboard Also Need to Be Passed Through
Lastly, since I can no longer use RDP (and the mouse and keyboard attached to the client), how do I actually use my VM? I needed to attach them to the server and then pass them through, of course! Learn how I did that here.