Ubuntu20.04LTS安装CUDA并支持多版本切换

慈云数据 2024-03-19 技术支持 86 0

文章目录

  • 1.前置知识
  • 2.查看显卡驱动版本号
  • 3.查看显卡驱动版本号和CUDA版本对应关系
  • 4.查看经典的CUDA版本号
  • 5.安装CUDA
    • 5.1.下载CUDA安装包
    • 5.2.执行CUDA安装
    • 5.3.配置环境变量
    • 5.4.CUDA多版本管理

      1.前置知识

      如果Ubuntu系统还没有安装显卡驱动,参考这篇文章:Ubuntu20.04LTS安装RTX-3060显卡驱动

      2.查看显卡驱动版本号

      当显卡驱动安装完成后,需要使用 nvidia-smi 命令查看英伟达显卡驱动版本。

      nvidia-smi
      

      在这里插入图片描述

      如上图所示,英伟达驱动版本为520.61.05,CUDA最高支持的版本为11.8。

      3.查看显卡驱动版本号和CUDA版本对应关系

      点击该链接:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html,查看英伟达显卡驱动版本和CUDA版本的对应关系。

      下图为CUDA工具包和CUDA小版本兼容性所需的最低驱动程序版本:

      在这里插入图片描述

      由于我工作站(Ubuntu 20.04 LTS)的英伟达驱动版本为520.61.05,从上图可以看出,我最高可以安装的CUDA版本为11.8.x。(注:CUDA 12.0.x和CUDA 12.1.x都要求英伟达驱动版本大于等于525.60.13,因此我的520.61.05不符合,所以我最高只能安装CUDA 11.8.x的版本)。

      4.查看经典的CUDA版本号

      由于我们最终是要安装pytorch,因此选取合适的CUDA进行安装是是否有必要的。通过该链接,可以查看 CUDA与PyTorch版本对应关系。

      PyTorch版本CUDA版本
      1.2.0、1.4.0、1.5.0、1.5.1、1.6.0、1.7.0、1.7.19.2
      1.0.0、1.0.1、1.1.0、1.2.010.0
      1.4.0、1.5.0、1.5.1、1.6.0、1.7.0、1.7.1、1.8.110.1
      1.5.0、1.5.1、1.6.0、1.7.0、1.7.1、1.8.0、1.8.1、1.8.2、1.9.0、1.9.1、1.10.0、1.10.1、1.11.0、1.12.0、1.12.110.2
      1.7.0、1.7.111.0
      1.8.0、1.8.1、1.8.2、1.9.0、1.9.1、1.10.0、1.10.111.1
      1.8.1、1.9.0、1.9.1、1.10.0、1.10.1、1.11.0、1.12.0、1.12.111.3
      1.12.0、1.12.111.6

      从链接可以看出,10.2、11.1、11.3这三个版本比较经典,能够支持多数pytorch版本,因此可以选择这三个版本的CUDA进行安装。

      5.安装CUDA

      5.1.下载CUDA安装包

      CUDA官方下载链接:https://developer.nvidia.com/cuda-toolkit-archive

      进入CUDA官方的下载链接后,查找自己需要下载的版本(以CUDA 11.3.1为例):

      在这里插入图片描述

      点击自己需要下载的版本,一次选择操作系统、系统架构、系统版本和安装方式,在这里推荐使用 runfile(local) 的安装方式。

      在这里插入图片描述

      完成上述操作后,网页下方弹出安装的命令,如下图所示:

      在这里插入图片描述

      5.2.执行CUDA安装

      在Ubuntu 20.04 LTS系统的命令行中,按照以下命令进行安装。

      # 第一步:使用wget命令下载安装包
      wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run`
      # 第二步:执行安装脚本
      sudo sh cuda_11.3.1_465.19.01_linux.run
      

      执行上述命令后,等待1分钟左右,系统会弹出安装的协议,问你 Do you accept the above EULA? 你需要在后面的光标处,填写 accept,然后敲回车。

      在这里插入图片描述

      然后系统询问安装的内容,注意!!! 一定要把Driver驱动这个给去掉(按空格键可以将 X 去掉),如果[ ]内是X 说明是要安装的;如果[ ] 是空,说明不安装。选择完成后,然后移动至Install 处,敲击回车。

      在这里插入图片描述

      安装完成后,会在 /usr/local 目录下产生cuda-11.3 目录,如下图所示:

      在这里插入图片描述

      这样说明CUDA-11.3版本安装完成了!

      5.3.配置环境变量

      使用 vim ~/.bashrc 命令进行编辑,在文件末尾添加下列代码:

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

      然后执行 source ~/.bashrc 刷新文件使其生效。

      5.4.CUDA多版本管理

      从图中可以看出,系统安装了11.1、11.3和11.6版本。

      在这里插入图片描述

      由于环境变量的地址为 /usr/local/cuda,且我们可以从图中发现目录下存在一个软链接,即:/usr/local/cuda 指向了 /usr/local/cuda-11.6 链接,说明此时尽管安装了CUDA 11.1和 CUDA 11.3版本,但系统默认的环境版本为11.6。如何进行多版本的切换呢,比如想把CUDA版本切换成11.3版本(但是要保留CUDA 11.1和11.6版本),我们只需要修改软链接即可,将CUDA 11.3的软链接链接到cuda目录下,代码如下:

      sudo rm -rf cuda  # 删除原有的软链接
      sudo ln -s /usr/local/cuda-11.3 /usr/local/cuda  # 将cuda-11.3链接到cuda下
      

      软链接重新生成后,使用 nvcc -V 命令可以查看当前的CUDA版本,如下所示:

      nvcc: NVIDIA (R) Cuda compiler driver
      Copyright (c) 2005-2021 NVIDIA Corporation
      Built on Sun_Mar_21_19:15:46_PDT_2021
      Cuda compilation tools, release 11.3, V11.3.58
      Build cuda_11.3.r11.3/compiler.29745058_0
      
微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon