【发布时间】:2011-07-30 08:56:53
【问题描述】:
我正在使用远程桌面连接连接到具有 Nvidia 卡(CUDA 兼容)的桌面。
我这样做是因为我目前没有显示器!因此,我暂时使用我的笔记本电脑连接到我的桌面并运行我的 CUDA 代码。
远程桌面无法识别 Nvidia 卡。
cudaGetDeviceCount() 返回一个非常大的数字。我的电脑上只有 1 个 Nvidia 460。
我该如何解决这个问题?我应该使用其他远程软件吗?
【问题讨论】:
我正在使用远程桌面连接连接到具有 Nvidia 卡(CUDA 兼容)的桌面。
我这样做是因为我目前没有显示器!因此,我暂时使用我的笔记本电脑连接到我的桌面并运行我的 CUDA 代码。
远程桌面无法识别 Nvidia 卡。
cudaGetDeviceCount() 返回一个非常大的数字。我的电脑上只有 1 个 Nvidia 460。
我该如何解决这个问题?我应该使用其他远程软件吗?
【问题讨论】:
如前所述,您不能使用远程桌面。
相反,您可以使用 VNC 客户端,例如 Splashtop Remote Desktop,它是免费的。
【讨论】:
据我所知,没有办法在远程桌面上使用 cuda。
远程桌面不允许访问您的显卡。 它更像是一个可视化的远程外壳。远程桌面被简单地告知哪些 gui 元素是可见的。 渲染在您的笔记本电脑上进行。
VNC 或 TeamViewer 之类的东西可能会起作用,因为 VNC 实际上会发送屏幕上的内容。
【讨论】:
您可以使用 rCUDA。
rCUDA 框架支持远程并发使用兼容 CUDA 的设备。
rCUDA 使用套接字 API 进行客户端和服务器之间的通信。因此,它可以在三种不同的环境中使用: 集群。减少高性能集群中安装的 GPU 数量。这会增加 GPU 的使用并节省能源,以及其他相关的节省,例如购置成本、维护、空间、冷却等。 学术界。在商品网络中,为许多学生同时提供对一些高性能 GPU 的访问。 虚拟机。启用对物理机上 CUDA 设施的访问。
【讨论】:
我使用 Windows 远程桌面连接到 Amazon 的 HPC 实例。我可以在那里毫无问题地运行基于 CUDA 的代码。因此,技术上可以通过 Windows 远程桌面连接访问 GPU。我不知道亚马逊在做什么不同。
【讨论】:
cg1) 正在慢慢被不支持此驱动程序的 Grid K520s(g2 实例类型)取代。
您可以安装 Nvidia Driver v353.06 并使用 CUDA over RDP。它适用于我和我在 Windows 7 x64 上的 GTX 680。
【讨论】:
除非您使用的是 Windows,否则 SSH 将是一个不错的选择。如果您使用 IDE 或想在文本编辑器中使用鼠标,则在运行 CUDA 时仍支持 X11 转发。
【讨论】:
确实,远程桌面应用程序根本不允许您访问显卡,这样做是出于速度考虑:您连接的设备不进行渲染,您连接与的设备(在您的情况下是笔记本电脑)执行此操作。结果,CUDA 程序突然看不到任何支持 CUDA 的设备并返回各种奇怪的东西。 (我发现我的测试程序并不总是只返回 0 作为设备计数,而是各种随机数据,cudaGetDeviceProperties 也是如此。
LogMeIn 是一个完美、免费、跨平台且在我看来更好的选择。使用此应用程序,所有渲染都在您连接的设备上完成,并且基本上每帧都会通过网络发送屏幕截图。简而言之:它就像您期望的远程桌面一样工作。
【讨论】:
您不能这样做,因为使用远程桌面时显示器未连接到视频卡。
【讨论】: