Search code examples
openglshaderremote-desktoprdp

Which graphics card is used when working with OpenGL shaders over RDP?


I'm taking an introductory OpenGL development course with a Surface Pro, and was hoping to connect to my more powerful desktop for development through the native Windows remote desktop tool. I'm having trouble with the shaders on my first test program, which leads to my question. Will the shader work be done by the graphics card on my Surface (RDP client) or my desktop (RDP host)?


Solution

  • That depends on your remote system's configuration. Your usual consumer GPU with standard drivers will not provide any HW acceleration for the RDP whatsoever and you'll drop into a SW emulation mode. However there are special visualization server GPUs and drivers which hook into the RDP server implementation and provide GPU acceleration for it; very likely you don't have that though.

    Note that it's ultimately just a driver issue. With the right drivers every GPU could do that. But HW vendors want to sell their special purpose devices, so they're locking that functionality to a specific product line.

    I'm hoping, that the advances of the Linux open source graphics ecosystem will, as a sideshow, enable implementing such visualization servers with commodity hardware in the near future. As much as I disregard the Wayland protocol and condept, as much do I like the advances its development promotes toward the lower levels of the Linux graphics stack. Which may likely put some pressure on the Windows world to catch up with that.