您的位置:首页 > 运维架构 > Linux

Linux(Ubuntu 12.04 LTS)下安装CUDA 5.5 手记

2014-10-20 10:47 561 查看
本文出处:http://www.aichengxu.com/view/13620

Linux(Ubuntu 12.04 LTS)下安装CUDA 5.5 手记,有需要的朋友可以参考下。

最近在学CUDA编程,开始一直在Win下做,但是现在需要看准确的GPU和CPU执行速度的比较(GPU的speedup),所以就搬到Linux下面测试。但是由于不是很熟悉Linux的操作,所以在安装CUDA
Toolkit的时候遇到了不小的麻烦。

今天终于搞定了,特来mark一下,这样是我的第一篇blog,以前一直有写blog的想法,尤其是和搞计算机相关的,都要一点一滴的积累,同时也算是给自己的成长历程留个记忆吧。

言归正传

我在网上看了不少帖子,有各种方法,但是由于每个人的实际情况都各有不同,所以只能做个参考。下面介绍我的操作过程:

1. 准备

从官网下载Ubuntu 12.04 LTS

下载地址:http://www.ubuntu.com/download/desktop(强烈建议使用英文版,因为用中文的话可能会在安装CUDA时出现意想不到的错误)

如果你无法访问上面的网址,用这个网址:http://www.ubuntu.org.cn/download/desktop(这个安装界面是中文的,你可以安装完后再改,具体方法请baidu,不难)

安装Ubuntu 12.04 LTS

我是Win 7 + Linux双系统,Win 7是原系统,然后再装Ubuntu。(具体如何安装双系统我会再开贴写一下)

这里注意:当你安装完官网版Ubuntu 12.04后,第一次进入到桌面可能会弹出让你安装显卡驱动,这时最好先无视之,后面会装的

还有如果你已经安装过driver了,可以先参照下面(除了安装driver的部分)的方法做。如果不行的话,可以尝试使用命令:

sudo apt-get --purge remove nvidia-current

然后重装driver
有的教程建议使用:

sudo apt-get purge nvidia*

我不确定这样做是否可以,因为我注意到有个默认安装的文件叫nvidia-detector,这个也会被删掉,很可能会导致(重启后)无法回到桌面界面(本人就是因为尝试各种方法后莫名其妙的丢失了桌面界面,后来甚至无法进入系统)
下载CUDA Toolkit 包

官方文档建议使用distribution-specific packages,也就是.deb包(很小,只有几百K),然后按照文档输入指令:

sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb   %这里<>中要按照自己下载包名字改
sudo apt-get update
sudo apt-get install cuda

但是每次都是报 depend 错误:

The following packages have unmet dependencies.
cuda : Depends: cuda-5-5 (= 5.5-22) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

试了各种办法,但是都不行,所以只好放弃,然后转到使用run包(大概800MB)
下载后,准备工作就做好了。

2. 安装CUDA Toolkit 包

确认已经安装好了所有编译条件,如果不确定请执行:

sudo apt-get update
sudo apt-get install build-essential

使用 vim 或者其他类似工具打开blacklist.conf

sudo vim /etc/modprobe.d/blacklist.conf

按 i 进入编辑模式,在最后一行加入:
blacklist nouveau

然后ESC退出编辑模式,输入" :wq " 存储并退出。然后建议重启计算机,我好像没有重启也成功了,不过为了保险起见还是重启吧!Nouveau这个驱动似乎是和Nvidia的驱动有冲突,所以必须禁掉,看手册中也有提到。

重启后,关闭GUI界面,进入命令行界面安装CUDA Toolkit

sudo service lightdm stop   %屏幕会黑掉
ctrl+alt+F1                 %进入命令行界面

login username and password %注意用户名不是你计算机的名字,是你命令行前缀里面的那个

cd 到你下载 run 包的文件夹下,开始安装:
chmod +x cuda_5.5.22_linux_64.run   %注意:我这里是64位系统,自己根据自己的系统下载相应的run包
sudo sh cuda_5.5.22_linux_64.run

然后会出一个license agreement,按住回车读完它(下面会有百分比%显示你读了多少了),最后会出现:
Do you accept the previously read EULA? (accept/decline/quit):

这里选择 accept,然后会出现:
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 319.37? ((y)es/(n)o/(q)uit):

这里选择 NO (n), 然后剩下出现的都是确认使用默认目录 ENTER 或者是 YES (y),然后就等着安装吧,很快就会好。如果出现:
===========
= Summary =
===========
Driver:   Not Selected
Toolkit:  Installed in /usr/local/cuda-5.5
Samples:  Installed in /opt/cuda_samples

恭喜你!你已经完成了大部分了!当然,在这条之前可能会提示一些 Missing recommended library: libGLU.so 等等,这个没关系后面会装的。
然后重启图形界面:

sudo start lightdm


3. 安装最新的 Nvidia driver 和一些必要的library (需要internet连接因为是在线安装)

sudo add-apt-repository ppa:xorg-edgers/ppa  %安装源
sudo apt-get update
sudo apt-get install libcr-dev mpich2 mpich2-doc nvidia-331   %安装mpi(可选),最新的driver 331
sudo apt-get install libX11-dev libglu1-mesa libXi-dev libXmu-dev freeglut3-dev  %都是些有用的lib
sudo apt-get install libgl1-mesa-glx libglu1-mesa-dev   %这两个本人没装,手册建议装

都安装完后,driver也搞定了。如果安装driver出现问题,可能是因为本身已经有了driver,请参考网上的方法卸载掉旧的driver再做上面的步骤。然后在桌面上点击打开system settings,打开一个好像叫additional drivers,会发现里面有driver-331的update,顺便升级了吧!最后建议重启一下电脑。然后可以打开terminal,输入nvidia-smi看一下driver 的信息。

4. 设置CUDA编程的环境PATH

同样使用 vim 或其他工具打开隐藏文件bashrc

sudo vim ~/.bashrc

然后用上面同样的方法在最后一行写入必要的PATH
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:/usr/lib/nvidia-331-updates:$LD_LIBRARY_PATH
export CUDA_SAMPLES=/home/username/NVIDIA_CUDA-5.5_Samples    %username自己改

最后保存退出,大功告成!!!重启电脑!!
5. 验证你的成果

最简单的方法是打开 terminal,输入nvcc -V,看看有没有版本号啥的

文档上用的是cat /proc/driver/nvidia/version

还有就是可以编译Samples,打开terminal,cd 到你安装sample的目录下,看到一堆各种应用类型的文件夹时,输入
make 然后回车执行,大概等个5 - 10 分钟后就会把全部的samples全部编译完毕。结果存在:

~/NVIDIA_CUDA-5.5_Samples/bin/x86_64/linux/release

你可以任意执行下面的文件,比如最基础的deviceQuery
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: