Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)

安装环境

  • Centos7(使用学校的服务器,无sudo权限)
  • anaconda
  • xftp

什么是CUDA

CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。

什么是CUDNN

NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。

CUDA与CUDNN的关系

CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。

官方Linux安装指南表述:
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第1张图片

从官方安装指南可以看出,只要把cuDNN文件复制到CUDA的对应文件夹里就可以,即是所谓插入式设计,把cuDNN数据库添加CUDA里,cuDNN是CUDA的扩展计算库,不会对CUDA造成其他影响。(我们待会可以从安装过程中发现,cuDNN的安装过程实际上是把cuDNN的头文件复制到CUDA的头文件目录里面去;把cuDNN的库复制到CUDA的库目录里面去。)

以上内容来自:https://www.jianshu.com/p/622f47f94784

安装CUDA

cuda下载地址:https://developer.nvidia.com/cuda-downloads?

根据自己的系统选择:
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第2张图片
但我这里并不是选择这种方式安装。

我是这里直接下载文件(点击图中右下角的Download):
https://developer.nvidia.com/cuda-80-ga2-download-archive
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第3张图片

下好后是这样样子:(我下的是8.0版本)
在这里插入图片描述
我用anaconda创了一个名为tfshizhan的环境,然后用xftp把文件传到相应的文件夹中:

/home/ljsnu/anaconda3/envs/tfshizhan

给文件运行权限:(这里根据自己的情况修改文件名)

chmod +x cuda_8.0.61_375.26_linux.run 

然后:

./cuda_8.0.61_375.26_linux.run

然后会出现一大段文字内容,需要不断按回车,一直按到结束(内容还挺长的)。

然后就根据你的情况选择:
(第二个问题我选了n,因为服务器上已经安装过驱动了。第四个问题是选择安装的目录,我填了/home/ljsnu/anaconda3/envs/tfshizhan,实际上应该填/home/ljsnu/anaconda3/envs/tfshizhan/cuda-8.0。第五个是因为我没有管理员权限,所以无法写入。)
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第4张图片
在这里插入图片描述
按回车。
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第5张图片
安装好之后提示你修改环境变量。

vim  ~/.bashrc

export PATH=/home/ljsnu/anaconda3/envs/tfshizhan/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/ljsnu/anaconda3/envs/tfshizhan/cuda-8.0/lib64
这里需要根据自己安装的目录修改一下路径

修改完之后先按ESC,再输入:wq保存
vim命令:https://www.runoob.com/linux/linux-vim.html

修改完之后使环境变量生效:

source ~/.bashrc

查看cuda-toolkit安装是否成功:

nvcc -V

Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第6张图片

安装CUDNN

在这里下载:https://developer.nvidia.com/rdp/cudnn-download
下载之前还要注册,要花一点时间。
选好版本下好之后如果是这个样子的:
在这里插入图片描述
就重命名为.tgz。

用xftp传到相应文件夹,解压:

tar -xzvf cudnn-8.0-linux-x64-v5.1.tgz

解压出来是这样子的:
在这里插入图片描述
里面是这样子的:
在这里插入图片描述
官网文档:
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第7张图片

(根据自己安装的目录适当改动)
# 复制cudnn头文件
sudo cp cuda/include/* /usr/local/cuda-8.0/include/
# 复制cudnn的库
sudo cp cuda/lib64/* /usr/local/cuda-8.0/lib64/
# 添加可执行权限
sudo chmod +x /usr/local/cuda-8.0/include/cudnn.h
sudo chmod +x /usr/local/cuda-8.0/lib64/libcudnn*

把cuda/include的这个cudnn.h文件放到cuda-8.0/include的文件夹中。(可以用cp命令,也可以直接用xftp。我这里直接用xftp了)

在这里插入图片描述
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第8张图片
然后再把cuda/lib64的下列文件(也是全部文件):
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第9张图片
复制到cuda-8.0/lib64里面(我这里是已经复制完成了)
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第10张图片

检测是否安装成功:

cat /home/ljsnu/anaconda3/envs/tfshizhan/include/cudnn.h | grep CUDNN_MAJOR -A5
(根据自己的路径适当改动)

出现下列信息即代表安装成功:
Centos7的cuda+cuDNN安装过程(集群无sudo权限用户)_第11张图片
一点感触:pytorch比tensorflow好的一点是,现在安装pytorch不用再单独安装CUDA了。

参考链接:https://blog.csdn.net/weixin_41278720/article/details/81255265

你可能感兴趣的:(安装)