超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】

文章目录

  • 简介
  • 1.安装显卡驱动
    • 查看显卡型号
    • 下载并安装NVIDIA驱动
      • 使用Ubuntu自带的软件和更新(Software&Updates)工具安装【博主使用的这种方式,推荐】
      • 自行下载使用命令行安装【自由度更高,大佬自行尝试】
  • 2.下载并安装CUDA
  • 3.下载并安装cuDNN
  • 参考资料

简介

想必很多做DL的小伙伴都需要在Linux下面进行,其中Ubuntu Linux是一个非常好的选择。这篇博客,博主将自己在Ubuntu系统下面从零开始安装CUDA和cuDNN的步骤做好了总结,仅供参考!若有更新或者不同之处,欢迎评论区讨论。

安装CUDA和cuDNN一般需要先后完成以下几步,并且具有先后顺序:

  1. 安装显卡驱动,完成后nvidia-smi指令可以使用;
  2. 安装CUDA Toolkit,安装完成后nvcc -V指令正常输出;
  3. 安装cuDNN,安装完成后PyTorch可以调用相关的计算包。

重要说明⁉️:我们常说的安装CUDA,实际上是指安装CUDA Toolkit。nvidia-smi指令查看的是驱动版本的CUDA(我们用CUDA-driver表示)。nvcc -V查看的是PyTorch等深度学习环境调用的CUDA版本,也是我们常说的CUDA(我们用CUDA-dl表示)。这里只需要 C U D A − d r i v e r ≥ C U D A − d l {\rm CUDA-driver} \geq {\rm CUDA-dl} CUDAdriverCUDAdl 即可,不一定要完全一致。

1.安装显卡驱动

查看显卡型号

这里我们将用到两条Linux指令和一个显卡ID和型号对照查询的网页(PCI devices: The PCI ID Repository):
* lspci3:显示 Linux 系统上的设备和驱动程序。
* grep(globa regular expression)4:用于查找文件里符合条件的字符串或正则表达式,即将输入文本或者文件中符合条件的内容输出或者显示。
* 竖线|:在Linux中竖线|是管道符的意思,用于连接两个命令,将第一个命令的输出作为第二个命令的输入。

lspci | grep -i nvidia

注意

  1. grep命令的参数-i表示后面内容不区分大小写。
  2. 我们这里没有使用网上部分资料里面说的lspci | grep -i vga指令。因为VGA compatible ontroller是输出图形,3D Controller是进行3D计算,并且Intel的双显卡方案就是用Intel集成显卡输出图形,用独显进行3D计算,故查看NVIDIA显卡版本,需要用的lspci | grep -i 3d或者lspci | grep -i nvidia等指令查看,否则会有可能显示Intel核显信息。
  3. 没有安装NVIDIA的显卡驱动是无法使用nvidia-smi查看显卡信息的。
  4. 没有安装CUDA是无法使用nvcc -V或者nvcc --version查看显卡信息的。

博主这里查找到的NVIDIA显卡ID是1f97,通过网址查询对应的显卡型号是MX450。一种笔记本用的NVIDIA显卡。

在这里插入图片描述
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第1张图片

下载并安装NVIDIA驱动

这里介绍两种常用的方法下载和安装NVIDIA驱动。

使用Ubuntu自带的软件和更新(Software&Updates)工具安装【博主使用的这种方式,推荐】

ubuntu-drivers devices
sudo apt install nvidia-driver-535

❗️注意:这里使用sudo apt install nvidia-driver-535命令即可,不能使用sudo apt install nvidia-driver-535-server-open。上述指令中驱动版本需要根据自身情况而定。也可以使用下面的命令直接安装推荐版本。

sudo ubuntu-drivers autoinstall

在使用sudo apt install nvidia-driver-535指令安装NVIDIA驱动之前,软件和更新里面显卡驱动显示是灰色的,无法选中!安装完成之后就会自动显示安装好的显卡驱动,在这个界面选择重启,或者直接重启即可!【不重启显卡驱动暂时不会起作用哈,nvidia-smi只会显示:No devices were found
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第2张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第3张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第4张图片

nvidia-smi

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第5张图片

nvidia-settings

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第6张图片

自行下载使用命令行安装【自由度更高,大佬自行尝试】

下载地址:

  1. 中文:https://www.nvidia.cn/Download/index.aspx?lang=cn
  2. English:https://www.nvidia.cn/Download/index.aspx?lang=cn
  • 查看Ubuntu系统信息
    用得到的指令是uname。uname是一个Unix和类Unix操作系统上的程序,可以打印当前计算机和操作系统的名称、版本及其他细节。uname系统调用和命令第一次出现在PWB/UNIX上。用到的uname指令参数是srnp分别表示显示内核名字内核版本主机名CPU信息CPU信息:x86表示32位系统;x86_64表示64位系统。系统位数是我们安装NVIDIA显卡驱动需要的。
sudo uname -srnp

在这里插入图片描述
当然也可以在设置(setting)里选择关于(about)查看系统信息

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第7张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第8张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第9张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第10张图片

【下面用于自定义安装显卡驱动的指令仅供参考】

  1. 更新Ubuntu软件包
sudo apt update && sudo apt upgrade

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第11张图片

  1. 安装依赖包
sudo apt install g++ gcc make

  1. 执行安装指令
    查看NVIDIA驱动安装包权限,这里没有执行权限。需要先给安装包添加可执行权限。chmod指令700或者777均可,前者给当前用户添加读写执行权限,后者给所有用户添加读写执行权限。
ls -lh Downloads/

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第12张图片

sudo chmod 700 Donwnloads/NVIDIA-Linux-x86_64-535.146.02.run

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第13张图片
安装

sudo Donwnloads/NVIDIA-Linux-x86_64-535.146.02.run

重启电脑即可!

2.下载并安装CUDA

我们常说的安装CUDA,实际上是指安装CUDA Toolkit。当Ubuntu系统中并未安装CUDA时,nvcc指令是执行不成功的。这里提示说可以直接通过指令sudo apt install nvidia-cuda-toolkit进行安装,我没有尝试,真的勇士可以试试看是否可行!!!
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第14张图片

  • 查看对应版本的CUDA
    查看网址:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
    博主这里的驱动版本是535.129.02对应的驱动CUDA是12.2,因此安装驱动版本需求小于535.129.02的CUDA Toolkit都不会有问题,但不建议安装太低版本的CUDA Toolkit。这里可以结合当下PyTorch官网https://pytorch.org的安装推荐CUDA版本。比如博主这里推荐的就是安装CUDA 11.8和CUDA 12.1的CUDA Tookit。这里我安装的是CUDA 11.8 GA,只需要驱动版本大于520.61.05,显然这里我们是满足的。
    超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第15张图片
    超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第16张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第17张图片

  • 进入NVIDIA CUDA Tollkit下载页面,下载安装包。

下载地址: https://developer.nvidia.com/cuda-toolkit
历史版本下载地址: https://developer.nvidia.com/cuda-toolkit-archive

直接进入 CUDA 下载地址点击下载会默认下载最新版本的 CUDA, 如此出12.1版本. 博主笔记本对应的12.0, 则需要在网页的下方找到 Archive of previous CUDA releases, 下载之前的版本.

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第18张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第19张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第20张图片
在这里插入图片描述


超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第21张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第22张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第23张图片

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第24张图片

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

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第25张图片

CUDA测试通过!撒花

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第26张图片

3.下载并安装cuDNN

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第27张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第28张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第29张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第30张图片
超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第31张图片

  • 将压缩包解压
tar -xf cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xz

在这里插入图片描述

  • 复制文件到CUDA安装目录
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda11-archive/include/* /usr/local/cuda-11.8/include

在这里插入图片描述

sudo cp cudnn-linux-x86_64-8.9.7.29_cuda11-archive/lib/libcudnn* /usr/local/cuda-11.8/lib64

在这里插入图片描述

  • 添加读取权限
sudo chmod a+r /usr/local/cuda-11.8/lib64/cudnn.h
sudo chmod a+r /usr/local/cuda-11.8/lib64/libcudnn*

在这里插入图片描述

  • 测试
cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_第32张图片


到此,完结!!!


参考资料

  1. 知乎:ubuntu查看显卡信息、卸载驱动、CUDA
  2. CSDN:Linux-ubuntu系统查看显卡型号、显卡信息详解、显卡天梯图
  3. 在 Linux 上使用 lspci 命令查看硬件情况
  4. 菜鸟教程:Linux grep 命令
  5. PCI devices: The PCI ID Repository
  6. 博客园:ubuntu显卡及驱动
  7. APT 与 APT-GET 之间有什么区别?
  8. CSDN:apt 和 apt-get的区别
  9. CSDN:怎么查看ubuntu是32位还是64位以及版本信息
  10. CSDN:Ubuntu18-22.04安装和干净卸载nvidia显卡驱动——超详细、最简单
  11. Ubuntu 20.04 安装NVIDIA显卡驱动+cuda 11.7+cudnn
  12. 知乎:ubuntu查看显卡信息、卸载驱动、CUDA
  13. CSDN:详解 Windows 10 安装 CUDA 和 CUDNN
  14. Ubuntu安装Nvidia英伟达显卡驱动,安装Cuda和Cudnn配置机器学习环境
  15. Ubuntu 20.04 安装NVIDIA显卡驱动+cuda 11.7+cudnn

收集整理和创作不易, 若有帮助, 请帮忙点赞收藏❤️, 谢谢!✨✨

你可能感兴趣的:(Linux,MachineLearning,ubuntu,linux,运维)