接触CUDA的时间并不长,最开始是在cuda-convnet的代码中接触CUDA代码,当时确实看的比较痛苦。最近得空,在图书馆借了本《GPU高性能编程 CUDA实战》来看看,同时也整理一些博客来加强学习效果。
Jeremy Lin
什么是CUDA
CUDA(Compute Unified Device Architecture)是由NVIDIA推出的并行计算平台和编程模型。它是一种专门为提高并行程序开发效率而设计的计算架构。在构建高性能应用程序时,CUDA架构能充分发挥GPU(Graphic Processing Unit)的强大计算能力。它包含了CUDA指令集架构以及GPU内部的并行计算引擎。开发人员可以使用C/C++语言来为CUDA架构编写程序。更多的介绍,可以参考NVIDIA的about page。
CUDA开发环境配置
在开始学习CUDA之前,我们需要先配置好CUDA的开发环境。我实验室电脑的系统是Windows8.1的,所以我下面配置的是Windows下的CUDA开发环境。
(1)第一步是确定电脑上是否装有支持CUDA的GPU。
你可以通过右击 我的电脑 -> 管理 -> 设备管理 -> 显示适配器 查看
我电脑上这个GPU比较烂,是GeForce GT 620的,不过还好,它支持CUDA。
其他支持CUDA的GPU你可以通过NVIDIA的网站查看:https://developer.nvidia.com/cuda-gpus
(2)安装好GPU的设备驱动程序
NVIDIA提供了一些系统软件来实现应用程序与支持CUDA的硬件之间的通信。如果正确安装了NVIDIA GPU,那么在机器上将已经安装好了这些软件。要确保安装最新的驱动程序,可以访问:
http://www.nvidia.com/Download/index.aspx?lang=en-us
来选择与开发环境相符的驱动。
(3)下载CUDA开发工具箱
在有了一款支持CUDA的GPU和相应的设备驱动程序后,就可以运行编译好的CUDA C代码。然而,如果你想要使用CUDA C为NVIDIA GPU开发代码,那么还需要其他一些软件。我们需要明白,CUDA C应用程序将在两个不同的处理器上执行计算,因此需要两个编译器。其中一个编译器为CPU编译代码,而另一个编译器为GPU编译代码。为CPU编译代码的编译器我们已经有了,机子上安装的是Visual Studio 2012,而编译GPU的编译器我们还需要自己安装。这个编译器就是CUDA Toolkit。
你可以从https://developer.nvidia.com/cuda-downloads下载到合适的CUDA Toolkit。
我下载的是cuda_6.5.14_windows_general_64.exe。安装过程就是傻瓜流程,一直next和OK就可以了。
(4)验证安装
这个很简单,在电脑上打开cmd.exe,然后键入nvcc -V
然后,改变路径进入CUDA Samples中运行deviceQuery.exe。在Windows 7、Windows 8.1中可能的路径是:
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v6.5\bin\win32\Release
我的电脑上的路径是:
运行结果如下所示:
(5)新建CUDA程序
依次打开:Visual Studio -> 文件 -> 新建 -> 项目 -> NVIDIA -CUDA 6.5
推荐学习资源:
[1] 官方:CUDA Education 地址
[2] 教材:Jason Sanders 《GPU高性能编程 CUDA实战》
[3] 课程:伊利诺伊大学 异构并行编程 地址
[4] 博客:从零开始学习《GPU高性能运算之CUDA》地址
[5] 博客:卜居,CUDA从入门到精通 地址
[6] 其他:清华大学CUDA培训教程;CUDA教程;深入浅出谈CUDA;风辰的CUDA入门教程 打包下载
本文地址:http://blog.csdn.net/linj_m/article/details/41314763
更多资源请 关注博客:LinJM-机器视觉 微博:林建民-机器视觉