如果我使用Windows远程桌面连接到一台计算机,我能否在上面运行CUDA程序?

6
我有一台位于远程的服务器。我计划在该服务器上运行一款使用CUDA可用显卡进行计算数学的程序,与图形无关。
那么,我能否在这台机器上运行这个程序呢?如果我通过Windows远程桌面登录,程序是否能识别物理显卡?或者由于远程控制而导致服务器甚至无法识别插入的显卡?
编辑说明:所有计算都将在远程服务器上完成,与我本地PC上正在进行的任何活动无关。我只是使用我的家用PC来“查看”该服务器上正在进行的操作。
2个回答

14

使用远程桌面无法运行CUDA。远程桌面会卸载图形驱动程序,从而禁用CUDA。

您需要使用VNC、Splashtop或其他替代方案来代替远程桌面。


太棒了。VNC听起来不错。不过还有一个问题:我能在远程图形卡上运行CUDA代码并仍然通过VNC显示正在进行的操作吗?基本上,使用图形卡进行CUDA代码是否消除了将其用于任何其他目的(如显示)的可能性? - eek
太棒了!你有推荐的VNC服务器/客户端吗?我正在寻找一些与RDP一样流畅的东西。 - eek
这实际上是不正确的。您可以在Tesla设备上使用CUDA远程桌面,因为Tesla设备默认使用TCC模式,因此它们不受WDDM图形驱动程序限制的限制。 - Tom
团队查看器能用吗? - Dan Nissenbaum
新的NVIDIA驱动程序(r352及更高版本)已经解决了RDP限制问题,使用其中之一的驱动程序现在应该可以在RDP会话中启用支持的 CUDA WDDM GPU的可见性。 - Robert Crovella
显示剩余2条评论

10

RDP运行在Session 0中,就像一个服务一样。图形驱动程序在Session 0中无法访问,因此通常CUDA程序无法工作(因为它们无法访问底层硬件)。

如果您正在使用Tesla,则可以将驱动程序置于Tesla Compute Cluster(TCC)模式下并绕过此问题,因此任何CUDA程序都可以在RDP上正常工作。


是的,你应该能做到。然而,当你的内核运行时,显示器很可能仍然会暂停(即不更新)--就像你亲自坐在机器前一样。 - Jack P.
哎呀,我的程序可能要运行一整天。如果我升级到特斯拉并在使用RDP时切换到TCC模式,显示屏是否仍会暂停?顺便说一下,你的网站/程序看起来真的很酷。我得去了解一下。 - eek
如果您的程序一直运行,那也没关系——许多内核完成得足够快,您不会注意到延迟。一般来说,如果您计划全天候计算,最好使用特斯拉(有很多原因)——其中之一是,如果您在TCC模式下运行特斯拉(无论您是直接使用机器还是通过RDP),显示屏不会暂停。 - Jack P.
我想要升级到特斯拉!然而有一个问题:我需要对我的程序进行任何更改才能在特斯拉上运行吗?程序能够区分这一点吗?还有,是否有人知道特斯拉显卡只能与特定的主板兼容?还是我只需要一个PCI-E 2.1 X16插槽就可以了? - eek
显示剩余9条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接