Wrong GPU selected on remote desktop without RDP connection

tl;dr: We can no longer create an OpenGL context on a Windows 10 machine with a GeForce 1070/1080/2080 Ti without a monitor attached, but it works when opening a Remote Desktop Protocol connection to the machine beforehand and keeping it alive.

Hi everyone,

we are developing a rendering software based on OpenGL on Windows 10 machines with various Nvidia GPUs. Our preferred way to work during the pandemic was to have the rendering software running on a remote machine (just a PC with GPU in WDDM, no monitor attached) and use a client for communication. However, this does not work anymore since a few weeks. Upon start, no OpenGL 4.5 context can be created because the GPU vendor is reported as Microsoft. The Nvidia GPU is no longer available to the application if it is started from outside.

However, if we have an active RDP connection, the Nvidia GPU is detected and our software can run flawlessly. As soon as the RDP connection is closed, the OpenGL context dies again.

Something has changed within the last weeks either due to an Nvidia driver update or a Windows update, that requires an open RDP connection to detect an Nvidia card on a remote machine.

Does anybody know what has happened here? Is it due to an Nvidia policy to prevent remote rendering on consumer cards? As remote rendering has been working flawlessly for 2 years now, this is certainly not a hardware issue, but something switched on/off in software only recently.

We would be happy if anyone could help.


1 Like