1 前言

首先理清一下关系,有关于 Nvidia 的有:

  • CUDA:为 "GPU 通用计算 " 构建的运算平台。
  • Nvidia GPU Driver:即显卡驱动
  • CUDA toolkit (nvidia): CUDA 完整的工具安装包,其中提供了 Nvidia 驱动程序、开发 CUDA 程序相关的开发工具包等可供安装的选项。包括 CUDA 程序的编译器、IDE、调试器等,CUDA 程序所对应的各式库文件以及它们的头文件。
  • CUDA Toolkit (Pytorch): CUDA 不完整的工具安装包,其主要包含在使用 CUDA 相关的功能时所依赖的动态链接库。不会安装驱动程序。
  • cuDNN:为深度学习计算设计的软件库。
    一般来说,许多包必须依赖于具体的 CUDA 版本,现在最常用的是 CUDA11.x 和 CUDA12.x 。
    另外,如果走安装 CUDA toolkit 和 open GPU Driver 这个路子,就不需要下载 Nvidia 官方闭源驱动,并且需要在安装之前完全卸载所有 Nvidia 相关的驱动。
简而概之

如果不需要 CUDA Toolkit,先装最新的显卡驱动,自带 CUDA,依照 CUDA 版本,安装对应的 torch 版本。
如果需要 CUDA Toolkit,则可以直接按照官网步骤正确安装 CUDA Toolkit,安装完成后自带显卡驱动、CUDA,之后再对应安装 torch 即可。

2 安装步骤

2.1 卸载所有 Nvidia 驱动

1
2
sudo apt-get --purge remove "*nvidia*"
sudo apt autoremove

2.2 安装 CUDA Toolkit

CUDA Toolkit 12.6 安装方法参见 CUDA Toolkit 12.6

1
2
3
4
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-6

CUDA Toolkit 11.8 安装方法参见 CUDA Toolkit 11.8

2.3 安装显卡驱动

1
sudo apt-get install -y nvidia-open

2.4 安装 cuDNN

前提是按照上述步骤安装好了 cuda repo,才能直接使用 apt 安装 cudnn。

1
sudo apt install cudnn

3 Bugfix

3.1 FAIL : Failed to Load Library libonnxruntime_providers_cuda.so with Error: libcudnn.so.8: Cannot Open Shared Object File: No such File or Directory

这是因为 CUDA12.5 缺少了 libcudnn.so.8 这个库,可通过单独安装。

1
sudo apt install libcudnn8