linux深度学习服务器搭建——CUDA与cuDNN的选择与安装

前言

    本文章参考实验室师妹的文章Ubuntu14.04+CUDA8.0+Opencv3.1+Anaconda2+Caffe安装,最近安装最新版时候遇到不少坑,下面就介绍下如何去安装CUDA和cuDNN,个人认为本文提供的方法可以针对任意版本。我们的服务器为ubuntu 16.04,NVIDIA驱动为390.67,CUDA版本为9.1, cuDNN版本为7.1.2。

    安装顺序为:NVIDIA驱动 → CUDA → cuDNNhttps://www.geforce.cn/drivers

一 基本库安装

    这些库主要是给其他算法库使用,基本上都是必备的,这里就不写他们之间的依赖关系了

sudo apt-get install build-essential  # basic requirement  
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

二 NVIDIA 驱动选择

    驱动的选择根据当前显卡进行选择,我们服务器显卡型号为GeForce GTX 1080 ti,下面去官网可以下载对应的驱动。

    在 https://www.nvidia.cn/Download/index.aspx?lang=cn可以选择我们最新的显卡型号,这个网址是GeForce驱动下载网址https://www.geforce.cn/drivers,可以选择各种版本的驱动。我们按照第一个网址选择最新的驱动程序,文件名为:NVIDIA-Linux-x86_64-390.67.run,请记住390.67,这个对于CUDA的选择非常关键。


    安装NVIDIA驱动时,较为麻烦我们分步骤进行

    ① 黑名单设置:在终端输入下述命令,在最后一行加上 blacklist nouveau . 这里是将Ubuntu自带的显卡驱动加入黑名单。在终端输入: sudo update-initramfs -u ,重新生成initrd文件,然后输入sudo reboot 重启电脑。

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

    ② 关闭图形界面:使用Ctrl+Alt+F1切换到纯字符界面,登陆用户,输入下述命令。然后切换到root用户下,输入 sh NVIDIA-Linux-x86_64-390.67.run安装显卡驱动。

sudo service lightdm stop        # 关闭图形界面 
sudo pkill -u root               # 结束所有进程,防止有X server 进程,但是这样会导致用户登出,需要在纯命令下重新登录

    注:如果安装时候有下述的选择,选择no。

Would you like to run the nvidia-xconfig utility to automatically update your X configuration file…

    安装成功之后,输入nvidia-smi 可以显示显卡信息。此时NVIDIA驱动安装成功。

三 CUDA 的选择与安装

    CUDA安装时候不要无脑选择最新的进行安装,先去查看CUDA支持的驱动版本号,选择对应最新的去安装即可。版本选择可以从NVIDIA CUDA Toolkit Release Notes选择,这个表至关重要,CUDA版本对应的驱动应大于等于这个值,根据上面我们下载的驱动,版本号为390.67,因此最高可以选择CUDA 9.1进行安装(选择CUDA 9.2一定会失败,血的教训,哭死)。


    安装时候如果遇到Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 390.67?之类的,一定要选择no,不同版本的问题也不一样,建议,每个选择都要去百度搜下。免得出错。

    安装之后编译/usr/local/cuda/samples下的测试例子,编译之后进入 samples/bin/x86_64/linux/release, 运行deviceQuery:./deviceQuery .

sudo make all -j16  

    输入./deviceQuery之后会输出一大串信息,如果看到类似下面的信息,则表示安装成功。

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.1, CUDA Runtime Version = 9.1, NumDevs = 2

    最后配置环境变量,在/etc/profile中添加CUDA环境变量:sudo vim /etc/profile。在最后中添加下述路径,将cuda添加到全局变量中。

export PATH="/usr/local/cuda/bin:$PATH"  

四 cuDNN的选择与安装

    cuDNN是做深度学习必备的库,cuDNN的选择比较容易,但是下载时候需要注册用户才能下载,而且网页速度较慢,建议从CSDN上找资源来下载。后续我会将上面所有的资源放进云盘分享出来。cuDNN的各种版本可以从这里下载cuDNN各个版本。我们选择的是Download cuDNN v7.1.2 (Mar 21, 2018), for CUDA 9.1 & 9.2。

    cuDNN下载之后是个压缩包,里面包含头文件和封装好的库,直接拷贝到/usr/local里即可。

sudo tar -zxvf ./cudnn-8.0-linux-x64-v5.1.tgz         # 解压缩cuDNN
cd cuda    
sudo cp lib/lib* /usr/local/cuda/lib64/               # 将所有lib文件复制到cuda文件中
sudo cp include/cudnn.h /usr/local/cuda/include/      # 将头文件复制到cuda中

    cuDNN不需要编译,在配置其他深度学习框架时候比如caffe或mxnet时候回自动连接。

五 结语

    这里我们提供了CUDA和cuDNN的选择和安装,按照这些选择的方法可以选择自己需要的版本进行安装,安装CUDA和NVIDIA驱动时候会遇到各种问题,核心问题主要有两点,版本是否匹配,给出的选择项是否选择正确,对于选择安装的问题一定要多多百度,免得反复重新安装。



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值