Ubuntu 24.04系统下配置PyTorch+CUDA深度学习环境的完整步骤是什么?

Ubuntu 24.04 系统下配置 PyTorch + CUDA 深度学习环境,需要依次完成以下步骤。以下是详细的、经过验证的完整流程:


✅ 一、系统准备与更新

# 更新软件包列表
sudo apt update && sudo apt upgrade -y

# 安装基础工具(编译、git等)
sudo apt install -y build-essential cmake git wget curl

✅ 二、安装 NVIDIA 驱动(GPU支持)

方法1:使用 Ubuntu 官方仓库(推荐新手)

# 查看推荐驱动
ubuntu-drivers devices

# 自动安装推荐的专有驱动
sudo ubuntu-drivers autoinstall

# 或手动选择安装(例如 nvidia-driver-535)
# sudo apt install -y nvidia-driver-535

方法2:从 NVIDIA 官网下载 .run 文件(高级用户)

建议仅当官方源不满足需求时使用。


✅ 重启并验证驱动

sudo reboot

验证驱动是否正常:

nvidia-smi

输出应显示 GPU 信息和驱动版本。若报错,请检查驱动安装是否成功。


✅ 三、安装 CUDA Toolkit(可选,但推荐通过 PyTorch 自带)

⚠️ 注意:PyTorch 官方通常提供 自带 CUDA 运行时 的版本,无需单独安装完整 CUDA Toolkit。

但如果你需要 nvcc 编译自定义 CUDA 扩展,则需安装 CUDA Toolkit。

推荐方式:通过 PyTorch 安装(免安装 CUDA)

跳到第四步即可。

可选:安装完整 CUDA Toolkit(如需 nvcc)

# 添加 NVIDIA CUDA 仓库(以 CUDA 12.4 为例,适配 Ubuntu 22.04+)
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install -y cuda-toolkit-12-4

Ubuntu 24.04 虽然未被官方完全支持,但使用 ubuntu2204 仓库通常兼容。

设置环境变量(添加到 ~/.bashrc~/.zshrc):

echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

验证:

nvcc --version

✅ 四、安装 cuDNN(通常不需要手动安装)

PyTorch 自带所需 cuDNN,一般无需单独安装。

如需开发或部署模型到其他平台,可从 NVIDIA cuDNN 页面 下载并安装。


✅ 五、创建 Python 虚拟环境(推荐)

# 安装 Python 3.10+ 和 pip
sudo apt install -y python3.10 python3.10-venv python3-pip

# 创建虚拟环境
python3.10 -m venv pytorch_env

# 激活环境
source pytorch_env/bin/activate

升级 pip:

pip install --upgrade pip

✅ 六、安装 PyTorch with CUDA Support

前往 PyTorch 官网 获取最新命令。

截至 2024 年中,适用于 Ubuntu 24.04 + CUDA 的命令如下(以 CUDA 11.8 为例):

# 激活虚拟环境
source pytorch_env/bin/activate

# 安装 PyTorch(含 CUDA 11.8 支持)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

🔔 注:目前 PyTorch 官方可能尚未为 CUDA 12.x 提供稳定预编译包,建议使用 cu118 版本,兼容性更好。

验证安装

import torch

print("PyTorch version:", torch.__version__)
print("CUDA available:", torch.cuda.is_available())
print("CUDA version:", torch.version.cuda)
print("Number of GPUs:", torch.cuda.device_count())

if torch.cuda.is_available():
    print("Current GPU:", torch.cuda.get_device_name(0))

预期输出:

CUDA available: True
CUDA version: 11.8

✅ 七、(可选)安装其他常用库

pip install numpy pandas matplotlib jupyter notebook tqdm scikit-learn

启动 Jupyter 测试:

jupyter notebook

✅ 八、常见问题排查

nvidia-smi 正常但 torch.cuda.is_available() 为 False

  1. 检查 PyTorch 是否安装了 CPU-only 版本。

    pip show torch

    看是否有 cu118cuda 字样。

  2. 确保驱动版本 ≥ 所需 CUDA 版本要求:

    • CUDA 11.8 要求驱动 ≥ 450.80.02
    • 使用 nvidia-smi 查看驱动版本
  3. 重新安装指定 CUDA 版本的 PyTorch。


✅ 总结:完整流程图

更新系统 → 安装 NVIDIA 驱动 → 重启 → 验证 nvidia-smi
       → 创建 Python 虚拟环境 → 安装 PyTorch (CUDA版)
       → 验证 torch.cuda.is_available()

✅ 附:推荐配置清单

组件 推荐版本
OS Ubuntu 24.04 LTS
NVIDIA Driver ≥ 535
PyTorch 2.3+ with cu118
Python 3.10 或 3.11
安装方式 pip + 官方预编译 CUDA 包

✅ 成功配置后,你就可以开始运行深度学习训练任务了!

如有特定框架(如 TensorFlow, Hugging Face, etc.),也可继续扩展环境。

需要我提供 脚本自动化安装 版本吗?