DaDesktop

GPU Passthrough Custom OS Template

When preparing your custom template to support GPU you should follow the instructions below.

Please note there are two major use-cases for GPU passthrough:

Though the Machine Learning use case requires less work (i.e. display doesn't have to use GPU), we will cover the end-to-end process to support both use cases.

Supported GPU

If you run DaDesktop on-premise, or request purchuse of specific cards for your private server, here are some considerations

We mainly test DaDesktop against AMD Radeon RX 6000 series (notably RX 6400) and Nvidia RTX cards. Models before 2018 are generally not supported.

In addition, integrated GPUs for Ryzen 7/9 and Intel iGPUs should work fine, but we do not run automated tests against them.

DD Node side

dadesktop_npnode_deploy/modules/build-os-template contains scripts to modify the Linux guest to support GPU as the primary display and switch between GPU-supported machines and CPU-rendered screens.

Guest Settings

Please confirm that the "support_qemu" in /var/lib/kvm/templatename/sysinfo.json has been set to false, so that you can connect to the VNC inside the guest,because QEMU VNC cannot display the passthrough GPU screen.

Testing

Method 1: 
vblank_mode=0 glxgears

Method 2:

/apps/dd-guest/check-gpu

Windows guest settings when no physical monitor is attached (most cases)

We use IddSampleDriver to create a display adapter and visual monitor in the Windows 10 template. Just install  it if your GPU does not have a monitor plugged in.

Go to "Device Manager" -> "Display Adapters" -> "IddSampleDriver Device": right-click, enable device. (You can disable the device if you're not using the virtual display.)

   it will be slow and you can "Disconnect this display" if this option is available.

   (Choose Display x, under the “Multiple displays” section, use the drop-down menu and select the Disconnect this display option.)

   You can also "Disconnect this display" if this option is available.