Ubuntu16.04下安装CUDA10.0及cuDNN7.4.2
第一次写博客,如有错误,欢迎指正。
这篇文章将自己在Ubuntu16.04下安装CUDA10.0及cuDNN7.4.2的步骤一一记录了下来,已成功安装。
准备工作
版本对应关系
首先要安装显卡驱动,根据自己的电脑选择安装对应的NVIDIA显卡驱动。
然后安装CUDA
显卡驱动与CUDA对应关系 :
根据安装的显卡驱动的版本,结合自己的选择,选择相应的CUDA工具包。
最后安装cuDNN
cuDNN是专门用于神经网络的加速包。每一个版本的CUDA可能有好几个版本的cuDNN与之对应,在官网选择相应的版本即可。
一、安装NVIDIA显卡驱动
到Nvidia官网下载与自己电脑相对应的显卡驱动(.run)
(比较难打开,多试一下)
安装
1.卸载之前的显卡驱动
sudo apt-get remove --purge nvidia*
2.禁用nouveau
# 打开blacklist.conf文件
sudo chmod 666 /etc/modprobe.d/blacklist.conf //修改属性
sudo gedit /etc/modprobe.d/blacklist.conf //打开文件
# 在文件末尾加上
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
blacklist nouveau
options nouveau modeset=0
# 保存
更新文件:
sudo update-initramfs -u
重启电脑
检查是否禁用成功
lsmod | grep nouveau
# 无内容输出,则禁用成功(否则,检查,重复禁用操作,直到禁用成功)
3.安装驱动
按Ctrl+Alt+F1,关闭图形界面(输入密码)
# 关闭图形化界面
sudo service lightdm stop
# 安装
cd /home/xxx/Nvidia //进入下载的.run文件目录
sudo chmod a+x NVIDIA-Linux-x86_64-xxx.run //修改权限
sudo ./xxx.run -no-x-check -no-nouveau-check -no-opengl-files //执行安装 xxx.run
(安装过程的选项我参考了其他博客,也不知道选项对安装有没有影响,可以看看其他的博客)
4.安装完成
# 启动图形界面
sudo service lightdm start
# Ctrl+Alt+F7回到图形界面
5.检查驱动是否安装成功
nvidia-smi
出现如下提示,则说明安装成功:
(注:此处的cuda是指该驱动程序支持的最大cuda版本)
二、安装CUDA10.0
到cuda官网下载相应的cuda版本(.runfile)
安装
1.禁用nouveau
# 安装驱动时已经禁用
# 检查是否禁用成功
lsmod | grep nouveau
# 无内容输出,则禁用成功(否则,检查,重复禁用操作,直到禁用成功)
2.安装
按Ctrl+Alt+F1,关闭图形界面(输入密码)
# 关闭图形化界面
sudo service lightdm stop
# 安装
cd /home //进入cuda安装文件目录下
sudo sh xxx.run //执行安装
(ctrl+c跳过协议)
然后按照提示一步步操作accept-n(driver,之前安装了)-y-y-y
# 重新启动图形化界面
sudo service lightdm start
# Ctrl+Alt+F7回到图形界面
如果能成功登录,不会遇到循环登录的问题,基本说明cuda安装成功了。
3.重启电脑,执行
ls /dev/nvidia*
结果显示如下则安装成功:
(若只显示前两个信息,可参考此部分末尾的博客)
4.设置环境变量
# 打开文件
sudo gedit /etc/profile
# 在打开文件的最后两行添加
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
重启电脑,查看CUDA版本
nvcc -V
参考博客
本部分主要参考了该篇博客,其中还列举了安装时遇到的问题
三、安装cuDNN7.4.2
cudnn是一个基于cuda的库,下载的压缩包解压后是一些头文件。
下载
到cudnn官网下载相应的cudnn版本
(下载cuDNN Library for Linux , 得到一个tgz压缩文件)
安装
# 解压
tar zxvf cudnn-10.0-linux-x64-v7.4.2.24.tgz
# 安装
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*
测试是否安装成功
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
若出现版本信息则安装成功