仅使用NVIDIA CUDA Toolkit,是否可以在同一节点上编译CUDA程序而无需具备支持CUDA的设备?我可以在没有cuda设备的情况下编译cuda程序吗
11
A
回答
13
您的问题的答案是YES。
nvcc
编译器驱动程序与设备的物理存在无关,所以即使没有支持CUDA的GPU,您也可以编译CUDA代码。不过要注意的是,正如Robert Crovella所说,CUDA驱动程序库libcuda.so
(适用于Windows的cuda.lib
)附带了NVIDIA驱动程序,而不是CUDA工具包安装程序。这意味着需要驱动程序API(其入口点前缀为cu
,参见CUDA C编程指南附录H)的代码需要强制安装“最近”驱动程序,而不需要NVIDIA GPU,单独运行驱动程序安装程序与--help
命令行切换。
遵循相同的基本原理,当节点托管不同体系结构的GPU时,可以为体系结构编译CUDA代码。例如,您可以在托管GT 210(计算能力1.2)的计算机上编译GeForce GT 540M(计算能力2.1)的代码。
当然,在这两种情况下(没有GPU或不同架构的GPU),您将无法成功运行代码。
对于CUDA的早期版本,可以在仿真模式下编译代码,并在CPU上运行编译后的代码,但设备仿真自一段时间以来不推荐使用。如果您没有支持CUDA的设备,但想要运行CUDA代码,则可以尝试使用gpuocelot(但我对此没有任何经验)。
相关问题
- 1. 使用CUDA支持编译的OpenCV可以在没有CUDA的情况下使用吗?
- 2. CUDA-GDB:没有CUDA设备
- 3. 是否可以在没有安装CUDA驱动程序的情况下运行CUDA程序或库?
- 4. 我可以在没有该设备的情况下发布应用程序吗?
- 5. python distutils可以编译CUDA代码吗?
- 6. 我可以在没有设备的情况下进行构建
- 7. VS2008没有编译cuda
- 8. 编译器可以在没有扩展的情况下编译代码吗?
- 9. 如何在没有证书的情况下编译设备?
- 10. CUDA:编译我的第一个cuda程序时出错
- 11. 我可以在没有ADFS的情况下设置SAML IDP吗?
- 12. 我可以在没有Google Closure库的情况下编译ClojureScript吗?
- 13. 我可以在真实设备(iPod)上没有证书的情况下启动我的应用程序吗?
- 14. 是否可以在没有lib的情况下编译C++?
- 15. 我可以在没有iOS设备的情况下在iTunes Remote上发布应用程序吗?
- 16. CUDA编程:编译错误
- 17. 我可以在没有签名的情况下将应用程序部署到Blackberry设备吗?
- 18. 我可以在没有设备的情况下从iTunes测试应用程序吗?
- 19. 可以在没有setter的情况下设置BeanUtils.setProperty()的值吗?
- 20. 我可以在没有Google Glass的情况下测试Google Glass的程序吗?
- 21. 在没有gnustep的情况下编译目标c程序
- 22. 来自Ubuntu PPA的CUDA:编译首个CUDA程序
- 23. spidermonkey可以在没有数学支持的情况下编译吗?
- 24. 我可以在没有对话框的情况下卸载应用程序吗?
- 25. 我可以在没有HttpPlatformHandler的情况下托管ASP.Net 5应用程序吗?
- 26. 我可以在没有编译的情况下在我自己的文本编辑器中使用Less吗?
- 27. 我可以在没有编译器的情况下将.c文件编译为.exe文件吗?
- 28. 可以在不编译xaml的情况下部署wpf应用程序吗?
- 29. 我可以在没有键盘的情况下访问stdin吗?
- 30. 我可以在没有IIS的情况下安装SharePoint Foundation吗?
是的。 'nvcc'编译器驱动程序与设备的物理存在无关,所以即使没有支持CUDA的GPU,也可以进行编译。遵循相同的基本原理,当节点托管不同体系结构的GPU时,可以为体系结构编译CUDA代码。当然,在这两种情况下,您将无法成功运行代码。请记住,设备仿真已经有一段时间了,所以如果你没有支持CUDA的设备,你可以尝试gpuocelot(但我没有任何经验)。 – JackOLantern
@RobertCrovella感谢您的澄清。我已将该评论转换为完整答案。请随时编辑它或添加评论,如果我失去了一些东西。 – JackOLantern