ubuntu18.04搭建cuda和cudnn教程(完整教程)

我经历了一天半的辛苦历程,终于搭好了cuda的环境。不熟悉ubuntu的使用操作,我相信也有很多人和我一样,一开始都是百度去搜索别人的经验,但是我看到的大部分经验只是一部分有用,通过整合网上的经验教程和自己踩过的坑,来写这个教程,希望大家不要再重蹈覆辙,一步到位。

服务器基本配置:

ubuntu18.04

Tesla V系列显卡

想要装:cuda10.0,cudnn7.6.5

1.更新系统的NVIDIA驱动

ubuntu系统是自带NVIDIA驱动,如果这个驱动版本太老旧,就会导致安装不了cuda10以上的版本,所以第一步会更新系统的NVIDIA驱动。选择最新的NVIDIA驱动安装更新即可。尤其是需要安装最新版本cuda,更需要更新NVIDIA驱动。

ubuntu18.04搭建cuda和cudnn教程(完整教程)_第1张图片
ubuntu系统的software & updates

当然也可以选择使用命令行更新,操作如下:

sudo add-apt-repository ppa:graphics-drivers/ppa # 添加源
sudo apt update
sudo apt install nvidia-driver-435 # 根据出现的drivers结果,选择一个最新的更新即可

以上两种方法选择一种方法操作即可。

2.下载安装cuda和cudnn

2.1下载cuda

cuda10.0下载地址:cuda10.0官网下载
我下载的是runfile(local),我看网上有人下载deb(local),我试验过deb格式,安装过程中就更新到10.2的版本,所以这里建议下载runfile(local)

ubuntu18.04搭建cuda和cudnn教程(完整教程)_第2张图片
cuda官网下载页面

2.2 安装

下载完成后,按照官网上的说明操作即可:

sudo sh cuda_10.0.130_410.48_linux.run # 按照官网安装说明操作即可
2.3 配置环境

我既修改了~/.bashrc文件,也修改了/etc/profile环境文件。网上很多人只修改一个文件,按照道理来说都是可行的。

2.3.1 修改~/.bashrc文件

输入以下代码,打开~/.bashrc文件

sudo vim ~/.bashrc

在文件最后面加入以下命令(先按一下"a"键才可以操作修改内容):

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64
export PATH=$PATH:/usr/local/cuda-10.0/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.0

修改后保存退出即可。
备注:应该也有很多我这样的ubuntu小白,不知道如何保存退出。先按"esc",然后输入":wq",就是保存退出。
然后,输入以下命令使该环境内容生效。

source ~/.bashrc
2.3.2 修改/etc/profile文件

输入一下代码即可操作/etc/profile的文件内容

sudo vim /etc/profile
2.3.3 创建链接

打开文件

sudo vim /etc/ld.so.conf.d/cuda.conf

文件末尾添加以下内容:

/usr/local/cuda-10.0/lib64

保存退出,然后执行以下命令

sudo ldconfig

使得内容生效。

2.4 测试cuda是否安装成功

此时需要切换到CUDA-10.0 Samples的路径下,输入以下命令:

cd /home/user/NVDIA_CUDA-10.0_Samples # user是用户自己的命名,每台设备命名不一样,根据自己的设备名称变化
sudo make all -j8
cd bin/x86_64/linux/release
./deviceQuery

如果cuda安装成功的话,会在最下面显示Result=PASS的内容,否则安装失败。

3.下载安装cudnn

3.1 下载

cudnn7.6.5下载地址(需要注册登录):cudnn7.6.5官网下载
一定要选择好cuda所对应的版本下载cudnn。比如cuda是10.0,那么就要下载10.0所对应的cudnn版本。(这个非常重要)
下载cuDNN Library for Linux那个文件即可。(我的账号登不进去官网了,很奇怪,暂时不贴图了,大家应该能够一目了然的。)
然后解压下载的文件,会看见一个cuda的文件夹,里面包含include文件和lib64文件。

3.2 安装

然后执行以下命令来配置cudnn

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*
3.3 创建库文件链接

你会发现lib64中有两个文件的大小竟然为0,所以必须要建立库文件链接。(这地方很多教程并没有,很关键。要不会报错内容就是libcudnn.so.7的太小读取不了)

cd /usr/local/cuda-10.0/lib64
sudo ln -sf libcudnn.so.7.6.5 libcudnn.so.7 #7.6.5是下载的cudnn的版本
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig -v
3.4 测试

复制sample到home目录下

cp -r /usr/src/cudnn_samples_v7 /$HOME

进入该目录

cd /HOME/cudnn_samples_v7/mnistCUDNN/

编译mnist测试样本

make clean && make all -j8

运行测试样本

./mnistCUDNN

如果最后结果是Test passed!,那么cudnn就安装成功了。

总结

其实每个人的配置不一样,所以中间的步骤各有差异。遇到问题还是要查找网上的一些资料,尤其是对于ubuntu小白来说,更是如此。希望以上内容对大家能够有所帮助,谢谢大家!

参考资料

Ubuntu 18.04 下安装安装NVIDIA显卡驱动+CUDA-10.1+cudnn-7
Ubuntu18.04+Tensorflow GPU版本环境搭建
安装cuDNN-7.5.0

你可能感兴趣的:(ubuntu18.04搭建cuda和cudnn教程(完整教程))