如何使用远程桌面运行cuda代码
How to Run a cuda code using remote Desktop?
我正在使用远程桌面连接连接到具有Nvidia卡(CUDA兼容)的桌面。
我这样做是因为我目前没有显示器!因此,我暂时使用我的笔记本电脑连接到我的台式机并运行我的CUDA代码。
似乎远程桌面无法识别Nvidia卡。cudaGetDeviceCount()
返回一个很大的数。我的电脑上只有1个Nvidia 460。
如何解决这个问题?我应该使用其他远程软件吗?
如上所述,您不能使用远程桌面。
相反,您可以使用VNC客户端,如Splashtop Remote Desktop,它是免费的。
据我所知,没有办法在远程桌面中使用cuda。
远程桌面不允许访问您的显卡。它更像是一个可视远程shell。远程桌面只是被告知哪些gui元素是可见的。渲染将在您的笔记本电脑上进行。
VNC或TeamViewer之类的东西可能会起作用,因为VNC实际上发送的是屏幕上的内容。
您可以使用rCUDA。
http://www.gap.upv.es/rCUDArCUDA框架允许远程并发使用cuda兼容设备。
rCUDA使用套接字API在客户端和服务器之间进行通信。因此,它可以在三种不同的环境中使用:集群。减少高性能集群中gpu的安装数量。这将增加gpu的使用并节省能源,以及其他相关的节省,如购置成本,维护,空间,冷却等。学术界。在商品网络中,为许多学生同时提供对几个高性能gpu的访问。虚拟机。允许访问物理机器上的CUDA设施。我使用Windows Remote Desktop连接到Amazon的HPC实例。我可以在那里毫无问题地运行基于cuda的代码。因此,从技术上讲,通过Windows远程桌面连接访问GPU是可能的。我不知道亚马逊有什么不同。
您可以安装Nvidia Driver v353.06并通过RDP使用CUDA。它适用于我和我的GTX 680 Windows 7 x64。
除非您使用的是Windows,否则SSH将是一个不错的选择。如果您使用IDE或希望在文本编辑器中使用鼠标,则在运行CUDA时仍然支持X11转发。
实际上远程桌面应用程序根本不允许您访问显卡,这是出于速度方面的考虑:您连接的设备不执行渲染,您将与连接的设备(在您的情况下是笔记本电脑)执行渲染。结果,CUDA程序突然看不到任何支持CUDA的设备,并返回各种奇怪的东西。(我发现我的测试程序并不总是只为设备计数返回0,而是所有类型的随机数据,cudaGetDeviceProperties
也是如此。
一个完美的,免费的,跨平台的,在我看来更好的选择是LogMeIn。使用这个应用程序,渲染都是在你所连接的设备上完成的,基本上每帧都有一个屏幕截图通过网络发送。所以简而言之:它的工作方式就像你期望的远程桌面一样。
使用远程桌面时,显示器未连接到显卡,因此不能这样做。
- 为什么即使使用-cudart-static进行编译,库用户仍然需要链接到cuda运行时
- 使 C++ Pi 近似在 GPU Nvidia 970M CUDA 上的 Paralell 中运行
- 为什么以下 POP 功能无法在主机或设备 (CUDA) 上运行?
- 是否可以在多线程而不是 cuda/opencl C++运行 GPU?
- CUDA 内核在第二次运行时运行得更快 - 为什么?
- 适应cmakelist.txt与cuda一起运行
- 降低CUDA内核运行时:内核中矩阵的动态内存分配
- CMAKE重新运行由于CUDA生成的文件
- 将Parralel CUDA程序转换为顺序运行
- 我们可以在没有安装工具包的情况下运行CUDA加速程序
- Mvapich在内核运行时在CUDA内存上僵局
- 在我的CUDA运行时间计划中,CPU和GPU可以异步计算,但不能合作地计算
- 我正在尝试运行CUDA示例,但是我在Ubuntu 16.04 Lts上的OpenGL(libglew.a)有问题
- 当运行的线程数超过内核数时,CUDA性能会得到提高
- 运行并发的CUDA内核,从C 包装器功能调用
- CUDA 在运行时检查 nvcc "-arch"-flag
- C++,OpenCV:异步运行cuda::dft
- 在ubuntu上运行cuda -它是否需要一个本地设备驱动程序(使用nvidia显卡)
- 每次启动都重复运行CUDA内核
- 如何使用远程桌面运行cuda代码