I am happy to announce that today I was able to successfully add a Graphics Processing Unit (GPU) to my Dell PowerEdge R330 server in order to use it for Plex transcoding on a VM under ESXi. After extensive research, I ended up settling on a NVIDIA Quadro P400 which can be found used for fairly cheap these days.
The goal of this post is to show you how to lower fan speed on a Dell Poweredge server after adding a 3rd party card.
Most Dell PowerEdge servers specially rack mounted versions usually don’t support GPUs so after trying and adding one as a test I was quick to discover that since it doesn’t recognize the card, iDRAC kicks up its fans in order to compensate for the possible extra heat generated by the new addition. As I discovered that the GPU performs to my satisfaction (even though not officially supported) I wanted to figure out a way to reduce the fan speeds back to the state prior to the addition but digging through iDRAC yielded no solution.
Recently I’ve decided to give Frigate a try since as some of you already know, motion detection on most cameras can be very flaky at times and I was looking for a permanent solution to false alerts outside my home. One of the issues I encountered during the process was Frigate suggests the use of a Google Coral Accelerator for object detection (which I was lucky enough to score one during the chip shortage) but since my Frigate instance is running under a VM on ESXi, I needed to passthrough the Coral to the VM which turns out it doesn’t work under ESXi 7.x. Simply plugging in the Coral to my PowerEdge R330 server and passing it through to the VM wasn’t enough.
Lucky, a user at the Frigate repo shared that passing through an entire USB controller to the VM instead of just the Coral DOES work so I had to give it a try. I purchased a controller from Amazon and went to work powering down the server, attaching the controller and powering back up. Once I finished toggling passthrough under ESXi settings and re-configuring the VM to use the controller with the Coral attached, Frigate successfully found it. There was one more issue, although a personal one: the fans on my server went nuts! Most Dell servers that detect a third party PCIe card in the configuration tend to increase the fans to account for the foreign device which for me, was excessively loud and unacceptable.
I then had the idea of maybe passing through the internal USB controller since I have no USB devices currently being used on this server and with the help of iDRAC Enterprice, I can manage this server remotely. The problem is even though I found the controller under the hardware tab in ESXi, I couldn’t toggle passthrough as the option showed not capable. But there had to be a way! Research led me to this article which turns out it does work!
ESXi Host PCI devices settings
After following the instructions in the link above my server is now running nice and quiet with the Coral being passed through the internal controller and Frigate purring along! Did I mention how awesome Frigate object detection really is?