Ark*_*avo 73 cuda gpu gpgpu gpu-programming
我是GPU编程的新手.我有一台配有NVIDIA GeForce GT 640卡的笔记本电脑.我面临两难困境,欢迎提出建议.
如果我选择CUDA - Ubuntu或Windows Clearly CUDA更适合Windows,而在Ubuntu上安装可能是一个严重的问题.我见过一些声称在Ubuntu 11.10和Ubuntu 12.04上安装了CUDA 5的博客帖子.但是,我无法让他们工作.此外,标准CUDA教科书更喜欢在Windows域中工作,并且在Unix/Ubuntu安装和工作方面或多或少都是沉默的.
CUDA或OpenCL - 现在这可能比我的第一个问题更棘手!我主要使用CUDA/Nvidia来接触GPGPU项目,但OpenCL可能是开源中的下一个最佳选择,在Ubuntu中安装可能不会成为问题,尽管这里的一些建议最有用.如果我选择OpenCL而不是CUDA,我会牺牲任何功能吗?
任何帮助或建议?
Evr*_*sen 93
如果您使用OpenCL,您可以在Windows和Linux上轻松使用它,因为具有显示驱动程序足以运行OpenCL程序,并且对于编程,您只需要安装SDK.CUDA对特定的GCC版本等有更多的要求.但是在Linux上安装它并不困难.
在Linux中,CUDA有一些奇怪的要求,例如使用GCC 4.6或4.7.如果您使用不同版本的GCC,则无法再编译您的程序.如果使用OpenCL,则可以使用任何编译器,因为您只需要链接到公共OpenCL库.因此,OpenCL更易于设置,使用和编译.编译OpenCL程序后,即使它是使用其他品牌的OpenCL SDK编译的,也可以在任何硬件上运行(只要进行编码即可).
您可以在GPU,CPU和加速器上编写可在Nvidia,AMD和Intel硬件上运行的OpenCL程序.更重要的是,Altera正致力于在FPGA上支持OpenCL!如果你使用CUDA,你将不得不只使用Nvidia的GPU和再次的OpenCL或其他语言的其他平台重新编写代码.从长远来看,使用CUDA的严重限制和严重浪费时间的原因.
我看到有人在CUDA和OpenCL之间发布了一些旧的引用,但它们已经老了!当这些文件出来时,只有AMD正确支持OpenCL.自2013年以来,OpenCL得到了ARM,Altera,Intel等的支持,成为行业标准.
唯一的缺点是,由于OpenCL非常灵活,您将面临更多选项和方法来编写程序中的内存分配,传输等.因此,它可能会感觉更复杂.
小智 9
我认为在ubuntu上设置cuda环境并不是很困难,你可以尝试一下.
作为一名计算架构学生,我认为你需要学习OpenCL和CUDA.您应首先学习cuda,因为CUDA会暴露更多硬件和运行时信息,当您想要优化GPU代码时,硬件意识非常重要.
| 归档时间: |
|
| 查看次数: |
50079 次 |
| 最近记录: |