Ubuntu16.04下显卡驱动、cuda、cudnn安装
本机情况
操作系统:Ubuntu16.04
显卡:GTX1050
显卡驱动安装
1.安装依赖并下载显卡驱动
依次输入:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev
sudo apt-get install libopencv-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
先输入:
sudo gedit /etc/modprobe.d/blacklist.conf
然后在最后一行加上 blacklist nouveau,保存退出。
再然后在终端输入:
sudo update-initramfs -u
最后重启电脑
3.安装驱动
1.启动电脑后,首先设置密码,因为登录文字界面需要密码
sudo passwd
2.进入文字界面(Ctrl+Alt+F1~F6),然后输入命令。 注:切换到图形界面快捷键:(Ctrl+Alt+F7)
sudo service lightdm stop # 关闭图形界面
进入驱动文件所在目录,输入命令(NVIDIA… .run代替驱动名称)
sudo chmod 777 NVIDIA… .run # 添加执行权限
sudo ./NVIDIA… .run -no-x-check -no-nouveau-check -no-opengl-files
网上有的教程是sudo ./NVIDIA… .run,只输入这个命令,驱动安装成功后或会在登录界面无限重启。
完成后,重启电脑,输入指令验证
nvidia-smi
若显示GPU信息,则安装成功,如图
注意
现在比较新的显卡驱动安装以后会在上图的右上角显示显卡对应的CUDA版本,最好接下来安装CUDA时就使用这个版本,以免出现玄学问题。如果没有显示,可按照你自己生成的上图左上角显示的显卡驱动版本(我这里是440.33.01)对应下图选择CUDA版本,或者自己搜索查询。
CUDA、cuDNN安装
CUDA:是Nvidia推出的只能用于自家GPU的并行计算框架。只有安装这个框架才能够进行复杂的并行计算。主流的深度学习框架也都是基于CUDA进行GPU并行加速的,几乎无一例外。
CUDNN:是Nvidia推出的针对深度卷积神经网络的加速库。
1.CUDA安装
1.在官网下载驱动【CUDA各版本官方下载地址】注:最好选用适合你显卡的CUDA版本,避免出现玄学问题,选择方法在上方。
进入网站以后,选择对应的CUDA版本点击进入,并依次选择Linux->x86->…(按照机子情况选择),最后的安装方式不要选择网络安装,选择前两个local安装都可以,并且按照下面给出的安装命令进行安装。
然后添加环境变量:
打开~/.bashrc文件:
sudo gedit ~/.bashrc
将以下内容写入到~/.bashrc尾部
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存,并更新环境变量,输入:
source ~/.bashrc
最后测试CUDA的例子
cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery
sudo make
sudo ./deviceQuery
如果出现下列信息表示安装成功。
2.cuDNN安装
1.下载cuDNN,进入cuDNN官网下载页面【下载链接】,勾选我同意,最后如下图所示,每个版本的cuDNN的后面都会显示对应的CUDA版本,请按照你安装的CUDA来选择cuDNN版本。
然后点击对应版本的cuDNN,如下图,选择第一个cuDNN Library for Linux (x86)下载。
2.安装(上面直接下载的cdDNN的文件包,并没有选择deb安装,本机deb安装方式失败)
进入cuDNN文件所在目录,解压:
sudo tar -zxvf cudnn-10.2-linux-x64-v8.0.1.13
然后拷贝一些头文件和库文件到CUDA安装目录,并赋予运行权限:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
最后查看cuDNN版本,确保安装成功:
注:新版的cuDNN改版了,查看版本的命令和以往版本不同:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2(老版本方法)
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2(新版本方法)
如果出现以下内容,说明成功。