[Linux指南]手把手教你配置Ubuntu下的CUDA、cuDNN环境

文章首发于若绾 [Linux 指南] 手把手教你配置 Ubuntu 下的 CUDA、cuDNN 环境，转载请注明出处。

导言

作为深度学习和并行计算的核心工具，CUDA（Compute Unified Device Architecture）为 NVIDIA 显卡提供了并行计算的能力。在本教程中，我们将详细介绍如何在 Ubuntu 操作系统下配置 CUDA。本教程以 CUDA 12.1 和 Ubuntu 20.04 为例进行说明，但对于其他版本的 CUDA 和 Ubuntu，配置过程也相差无几。

安装 CUDA

步骤 1：确认系统兼容性

在配置 CUDA 之前，首先要确保你的系统满足安装要求。以下是需要检查的项目：

确保你的 GPU 是 NVIDIA GPU，并支持 CUDA 计算能力。可以通过 NVIDIA 官方网站查看支持的 GPU 列表。

确保你的系统是 64 位的 Ubuntu 操作系统。

安装 Linux 内核版本在 4.4 及以上的版本。

步骤 2：更新系统软件包

打开终端并输入以下命令更新系统软件包：

Copy
sudo apt update
sudo apt upgrade

步骤 3：安装 NVIDIA 显卡驱动

如果你的系统尚未安装 NVIDIA 显卡驱动，可使用以下命令安装：

Copy
sudo ubuntu-drivers autoinstall

安装完成后，重启计算机以确保驱动程序正确加载。

步骤 4：下载 CUDA 工具包

前往CUDA ToolKit 官方网站下载相应版本的 CUDA Toolkit，的安装包（以 CUDA 12.1 为例）

步骤 5：安装 CUDA Toolkit

你可以运行以下命令下载并安装 CUDA Toolkit：

Copy
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda-repo-ubuntu2004-12-1-local_12.1.0-530.30.02-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-12-1-local_12.1.0-530.30.02-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2004-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda

步骤 6：配置环境变量

为了确保系统能够正确识别 CUDA Toolkit 的安装位置，需要设置环境变量。打开～/.bashrc 文件，添加以下内容：

Copy
#打开~/.bashrc
sudo vim ~/.bashrc

#在文末添加下两行并保存关闭
export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

保存文件并运行以下命令使环境变量生效：

Copy
source ~/.bashrc

步骤 7：验证 CUDA 安装

运行以下命令验证 CUDA 是否已正确安装

Copy
nvcc --version

如果安装成功，你将看到类似于以下的输出，其中显示了 CUDA 编译器（nvcc）的版本信息：

Copy
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Tue_Sep_21_19:24:46_PDT_2021
Cuda compilation tools, release 12.1, VXX.X.X
Build cuda_12.1.r12.1/compiler.XX

安装 cuDNN 库（可选）

cuDNN 是一款深度学习框架的 GPU 加速库，支持 TensorFlow、PyTorch 等框架。要安装 cuDNN，请按照以下步骤操作：

前往 NVIDIA 官方网站注册并登录，然后进入cuDNN 下载页面。

选择与你安装的 CUDA 版本兼容的 cuDNN 版本，下载对应的压缩包。

解压缩下载的文件。假设文件解压缩到了～/Downloads/cudnn-local-repo-ubuntu2004-8.8.1.3_1.0-1_amd64.deb 目录。

在终端中运行以下命令安装 cuDNN 库，在置行以下命令之前，您必须将 X.Y 和 8.x.x.x 替换为您特定的 CUDA 和 cuDNN 版本。：

Copy
cd ~/Downloads/
sudo dpkg -i cudnn-local-repo-${OS}-8.x.x.x_1.0-1_amd64.deb

#导入GPG key
sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/

#刷新apt源
sudo apt-get update

#安装库
sudo apt-get install libcudnn8=8.x.x.x-1+cudaX.Y
sudo apt-get install libcudnn8-dev=8.x.x.x-1+cudaX.Y
sudo apt-get install libcudnn8-samples=8.x.x.x-1+cudaX.Y

总结

至此，你已经成功配置了 Ubuntu 下的 CUDA 环境。现在，你可以使用 GPU 进行深度学习和高性能计算了。在接下来的工作中，你可能还需要根据实际需求安装和配置深度学习框架，例如 TensorFlow 或 PyTorch。