CUDA & cuDNN Installbook by Eric

1. 致谢

感谢网友撸起袖子就去干和FlyWine分享的经验,
原文链接如下:
https://blog.csdn.net/wanzhen4330/article/details/81699769
https://blog.csdn.net/wf19930209/article/details/81879514

2. CUDA安装步骤

step 1:首先我们需要查看合适的CUDA版本,在PyTorch的官网Start-Locally | PyTorch进行查看;然后选择当前主版本(11.x)相同的最新子版本(11.newest)的CUDA,作为预选的CUDA版本;
step 2:查看与当前CUDA适配的驱动版本,来判断是否需要重新安装驱动,
Release Notes :: CUDA — CUDA Toolkit and Compatible Driver Versions
查看GPU驱动版本:nvidia-smi
。。。
step 4:安装命令就使用CUDA网站提供的安装命令,如图所示:
在这里插入图片描述
step 5: 如果在安装CUDA之前,安装了显卡驱动,则这里选择不安装驱动
step 6: 根据CUDA安装后的提示信息说到,我们还需要配置环境变量,

提示信息:
Please make sure that

  • PATH includes /usr/local/cuda-10.2/bin
  • LD_LIBRARY_PATH includes /usr/local/cuda-10.2/lib64, or, add /usr/local/cuda-10.2/lib64 to /etc/ld.so.conf and run ldconfig as root

需要通过修改CUDA提供的一个脚本文件来实现,即主目录下的.bashrc文件,
我们将.bashrc文件用文本编辑器打开,使用命令,

sudo gedit ~/.bashrc

并在最后加入如下格式的代码:

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

修改完成后保存文件,然后关闭所有终端重启即可,(重启之后脚本会自动地执行,从而完成环境变量的配置);

2.1 使用conda安装nvcc编译器

首先需要在Conda官网上查询合适package,关键词:CUDA
经测试,cuda-nvcc库提供了nvcc编译器程序,(安装后可以使用nvcc -V来验证),关键词:

CUDA nvcc

具体来说,这里我们选择的是Nvidia官方提供的编译库:nvidia / packages / cuda-nvcc

2.2 使用conda安装 cuda_runtime_cpp

对于无法找到cuda_runtime.h头文件的问题,
解决方案:
使用conda安装cuda-cudart-dev包,安装 cuda_runtime 的C++函数库,包括cuda_runtime.h头文件;
具体的安装命令请参考Nvidia官方conda源:nvidia / packages / cuda-cudart-dev

Note
以下cuda包均可适用:

  1. cuda-cudart-dev
  2. cuda-libraries-dev

2.3 使用Ubuntu系统命令安装

sudo apt install nvidia-cuda-toolkit

如果需要安装驱动,也可以直接使用Ubuntu系统的驱动更新功能;

3 CuDNN安装

3.1 Conda安装

conda install -c conda-forge cudnn=cudnn_version

3.2 官方安装文档

官网安装教程:cuDNN Installation Guide :: 2.3. Installing cuDNN On Linux
官方下载网站:[cuDNN Archive | NVIDIA Developer]

3.2.1 在页面中没有找到对应Ubuntu版本的.deb安装包

如果在页面中没有找到对应Ubuntu版本的.deb安装包,说明NVIDIA官方目前并没有开放当前系统的编译版本,此时需要更改Ubuntu的系统版本;

3.3 测试cuDNN是否安装成功

接下来我们来验证cuDNN是否安装成功:
验证方法来自于NVIDIA官方文档《NVIDIA CUDNN DOCUMENTATION》
step 1: 将cuDNN的测试样例复制到一个可写的文件夹中,官方指南中是用cp命令实现的,(而我自己会在主目录下新建一个test文件夹专门作为测试文件夹),用来进行测试,所以需要对提供的shell命令进行修改:

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

我们把目的路径修改为自己想要的文件夹,
我这里设置成我的测试文件夹test,即/home/songyuc/test
于是修改为:

cp -r /usr/src/cudnn_samples_v8/ /home/songyuc/test

v8:v8这里是版本号,需要根据当前的cuDNN版本进行修改;
step 2: 进入到这个样例代码的文件夹,官方指南里面用的是cd命令,这里由于我用的是图形界面,于是是直接打开的,然后右键打开终端,需要执行的样例代码的路径为/home/songyuc/test/cudnn_samples_v8/mnistCUDNN

4. NCCL安装

点击【O/S agnostic local installer】下载安装包;

判断是否成功安装NCCL

ldconfig -p | grep nccl

5 PyTorch验证CUDA和cuDNN是否安装成功

请参考博文《PyTorch下 CUDA 和 CuDNN 安装验证程序》

# 引入PyTorch
import torch

# torch是否可以正常连接CUDA
print(torch.cuda.is_available())

# torch是否可以正常连接cuDNN
from torch.backends import cudnn
print(cudnn.is_available())

# 显示cuDNN版本
print(cudnn.version())
# 显示的是编译torch时使用的cuDNN版本号

5 第二版本或以前版本的CUDA安装

5.1 查看系统当前CUDA版本

想要查看系统当前的CUDA版本,使用命令:
nvcc -V
会得到下面的输出结果,
在这里插入图片描述
如果无法识别指令,则可能没有安装CUDA;

5.2 查看已安装的CUDA版本

step 1: 打开终端;
step 2: 输入cd /usr/local,打开local文件夹;
step 3: 使用ls命令查看已存在的文件内容,可以看到如示例图所示的结果,
在这里插入图片描述
可以看到这里出现了cuda-10.1和cuda-10.0的文件夹,所以是安装了这两个版本的CUDA;

5.3 安装第二个版本CUDA

step 1: 首先我们需要打开CUDA Toolkit Archive工具包官方网站,使用run方式进行安装,因为run方式我们可以进行配置;
step 2: 选择相应的CUDA版本后,按照官网的命令进行安装,即使用wget命令进行安装;
注意:在运行.run安装程序时,不要安装显卡驱动“Graphic Driver”;
step 3:安装完成后,使用nvcc -V查看当前的CUDA版本;

5.4 配置CUDA的环境变量

查看.bashrc文件内容

cat ~/.bashrc

给bash终端在预启动时添加环境变量

echo "export PATH=/usr/local/cuda-11.x/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda-11.x/lib64:$LD_LIBRARY_PATH" \
>> ~/.bashrc

5.5 CUDA版本的切换

使用如下的命令模板:

sudo rm -rf /usr/local/cuda
sudo ln -s /usr/local/cuda-**.* /usr/local/cuda

例如,将CUDA切换到10.1版本的命令为:

sudo rm -rf /usr/local/cuda
sudo ln -s /usr/local/cuda-10.1 /usr/local/cuda

切换版本后,如果出现问题,例如:

RuntimeError: cuda runtime error (804) : forward compatibility was attempted on non supported HW at /opt/conda/conda-bld/pytorch_1579022027550/work/aten/src/THC/THCGeneral.cpp:50

请重启后重新运行nvidia-smi

7 卸载旧版本的CUDA

关于卸载,CUDA在安装完成时给出了这样的提示:

To uninstall the CUDA Toolkit, run cuda-uninstaller in /usr/local/cuda-11.3/bin

卸载/usr目录中安装的CUDA-11.x

sudo ./cuda-uninstaller

卸载CUDA-10.0
CUDA Toolkit v10.0.130 – To uninstall a Toolkit runfile installation

8 获取NVIDIA支持

可以在NVIDIA的官网获得技术支持,https://www.nvidia.cn/support/

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值