CUDA 在linux系统上安裝指南
适用的操作系统
Fedora 7,8,9,10
Redhat Enterprise 3.x,4.x,5.x
SUSE Linux Enterprise Desktop 10-SP1,10.2,11.0
OpenSUSE 10.1,10.2,10.3,11.0,11.1
Ubuntu 7.04 ,7.10.,8.04,8.10,9.04
--------------------------------------------------------------------------------
下载和操作系统配套的
驱动程序,SDK, tookit
地址:http://www.nvidia.com/object/cuda_get.html
--------------------------------------------------------------------------------
安装程序(TESLA 搭配非 NVIDIA 显卡使用,可不须安装该显卡驱动程序)
--------------------------------------------------------------------------------
在Terminal中安装(不要进 XWindow )
以linux as5.2下安装 cuda2.1为例
1. 安装 CUDA 运算驱动程序
命令行下执行: sh NVIDIA-Linux-x86_64-180.22-pkg2.run
根据提示回车执行各步安装过程
关于如何安装 NVIDIA 的 Linux 驱动程序,请参考
NVIDIA Accelerated Linux Driver Set README and Installation Guide
http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/index.html
安装完毕可以在Terminal中执行[nvidia-xconfig -query-gpu-info]以查看所安装的 NVIDIA GPU
执行结果请见下图
2. 安装 NVIDIA CUDA Toolkit
命令行下执行:sh cudatoolkit_2.1_linux64_rhel5.2.run
安装程序会要求你输入安装路径或是接受默认值,推荐以 root 身份安装并使用默认路径(/usr/local) ,
在之后我们将会以
增加 CUDA 二进制文件(nvcc)及函数路径(libcuda.so)到 PATH 及LD_LIBRARY_PATH 的环境变量
安装完毕可以执行[nvidia-smi]以查看所安装的 CUDA GPU
[nvidia-smi]是 NVIDIA 提供可以让我们确认安装在机器中的 GPU 是否都能正常运行 CUDA 的新工具
执行结果请见下图
3. 安装 NVIDIA CUDA SDK
命令行下执行:shcuda-sdk-linux-2.10.1215.2015-3233425.run
安装程序会要求输入安装路径或是接受默认值,默认安装路径为用户的家目录(/NVIDIA_CUDA_SDK)。
在之后我们将会以
PATH=$PATH:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:
export PATH
export LD_LIBRARY_PATH
注意
然后启用该配置
source .bash_profile
4. 建构 SDK project 范例程序
cd
Build:
- release 输入 "make".
- debug 输入 "make dbg=1".
- emurelease 输入 "make emu=1".
- emudebug 输入 "make emu=1 dbg=1".make
在
libcutil 是为了方便使用而提供的,不属于 CUDA 的一部分
注意:
在make时一些用到opengl的范例会发生有关gl的编译错误,这是因为没有安装opengl的库造成的,需要另外下载安装gl的库。
其他的范例应该编译正常。
可以直接到 /root/NVIDIA_CUDA_SDK/projects下的各个范例中直接执行make进行编译:
如:矩阵乘
cd /root/NVIDIA_CUDA_SDK/projects/matrixMul
Make
5. 执行范例
在范例程序当中的 deviceQuery 是让我们得到装在这台机器上可以进行 CUDA 运算的 GPU 信息
建构范例程序
cd
make
然后在
deviceQuery 执行结果如下图
而执行 release, debug, emurelease 或 emudebug 等
其目录位于/bin/linux32/[release|debug|emurelease|emudebug]
--------------------------------------------------------------------------------
创建自己的程序
--------------------------------------------------------------------------------
使用 CUDA SDK 可以很容易的创建新的 CUDA 程序。
以复制及修改 CUDA SDK 提供的项目"template"的方式来符合你的需求
步骤如下
1. 复制整个"template"项目(这边以 myproject 代表你所要创建的项目)
cd
cp -r template
2. 把项目的文件名称改成你要的文件名称
mv template.cu myproject.cu
mv template_kernel.cu myproject_kernel.cu
mv template_gold.cpp myproject_gold.cpp
3. 把项目内容的文件名称改成你要的文件名称
编辑 Makefile 及原始档
把所有的"template"用"myproject"取代
4. 编译
make
5. 在下面的位置执行新的程序
../../bin/linux32/release/myproject
执行结果应该是"Test PASSED"
6. 最后再将程序代码改成符合你的运算需求即可
此部份请参考 CUDA Programming Guide