How to Run a GPU-Accelerated Virtual Desktop Environment on RunPod

BY ZHEN LU - JUNE 28, 2022
There are a few use cases for running a GPU accelerated virtual desktop on RunPod. One common use case is for those who need to use demanding applications that require a lot of processing power, such as 3D rendering with blender. In this blog post, we'll go over how to easily deploy a pod with everything you need to get rendering.

In this post, we will create a new template that will take care of most of the heavy lifting for us. First, log in to your account and go to the Templates section. Click on the "New Template" button at the top of the screen to start creating our template.

Start by naming the template. RunPod generates a random name for you, but I'm going to name this template "Nvidia-GLX-Desktop" to avoid confusion. Fill in the rest of the fields with the following values:

Container Image: massedcompute/nvidia-glx-desktop
Container Disk: 30
Volume Disk: However much space you think you need
Volume Mount Path: /home/user
Expose TCP Port: 8080

Then expand the environment variables section to fill in these keys and values:

KEY: SIZEW VALUE: 1920 (or whatever you want your horizontal res to be)
KEY: SIZEH VALUE: 1080 (or whatever you want your vertical res to be)
KEY: BASIC_AUTH_PASSWORD VALUE: (whatever you want your password to be when you log in)

Your template should look like this when you are done:

Go ahead and save your template.

Now, you can find an instance that has TCP support and deploy an instance using this template. Once the instance is deployed, click on the "Connect" menu option in your My Pods Dashboard. You should see a Public IP and External Port listed under TCP Ports.

In this case, I would want to put 209.137.198.23:11322directly into a browser window. You should see an alert modal pop up asking you for a username and password.

Note: It may take a minute or two for your pod to start hosting the UI, even after the connect menu is lit up.

Put in "user" for Username and the password that you selected when you configured your pod template. You should now have access to a virtual desktop that is graphics accelerated!

I was able to install the unigine heaven graphics benchmark and achieve ~120 FPS at 1080p using this setup. The latency I observed was around 200ms, which is not suitable for gaming. I do believe, however, that this may be sufficient for running user interfaces that require graphics acceleration, such as blender. I hope that you found this helpful.

Zhen is one of the co-founders of RunPod. He holds a PhD in Computational Chemistry and has lots of experience teaching, coding, and talking to people.

Want to join our growing community?
Chat with us on our Discord Server.
Prefer email? Contact us at support@runpod.io