在DeepinLinux下使用nVidia CUDA
CUDA(Compute Unified Device Architecture,统一计算架构)是由NVIDIA所推出的一种集成技术,是该公司对于GPGPU的正式名称。通过这个技术,用户可利用NVIDIA的GeForce 8以后的GPU和较新的Quadro GPU进行计算。亦是首次可以利用GPU作为C-编译器的开发环境。NVIDIA营销的时候,往往将编译器与架构混合推广,造成混乱。实际上,CUDA可以兼容OpenCL或者自家的C-编译器。无论是CUDA C-语言或是OpenCL,指令最终都会被驱动程序转换成PTX代码,交由显示核心计算。
在论坛上看到有些用户希望在deepin下使用CUDA,但是他们采取的做法往往是手动下载nvidia的二进制文件,直接进行安装。
但是这样会破坏一部分的glx链接,导致卸载的时候无法彻底恢复,结果就是系统因为卸载nvidia驱动而废掉,所以我推荐使用包管理器的方式安装nvidia驱动和cuda相关的东西,尽量不要手动修改。
需要安装的很少,只有五个包,不过会依赖很多nvidia的库,总量还是有一些的。
1 |
|
nvcc是cuda的编译器,它目前只支持g++5,所以还需要安装g++5。
1 |
|
然后,重启一下计算机。
将以下代码保存为 main.cu
1 |
|
编译:
1 |
|
运行:
1 |
|
如果一切顺利,在编译的时候就不会有报错,不过在我的环境下nvcc会有架构被弃用的警告,本着只要不error就算没事的原则,我们无视这条警告即可。
输出结果:
1 |
|
在DeepinLinux下使用nVidia CUDA
https://blog.justforlxz.com/2018/06/27/在DeepinLinux下使用nVidia-CUDA/