在 Ubuntu 20.04 和 22.04 上安装 CUDA 和 PyTorch 的主要差异不大,但存在一些需要注意的细节。以下是关键差异和安装建议:
1. 系统依赖差异
- Ubuntu 20.04:默认使用 GCC 9,CUDA 11.x 官方支持 GCC 9。
- Ubuntu 22.04:默认使用 GCC 11,部分 CUDA 版本(如 CUDA 11.x)可能需要降级 GCC 或使用更高版本 CUDA(如 CUDA 12.x)来兼容。
2. CUDA 安装差异
Ubuntu 20.04
- 推荐 CUDA 版本:CUDA 11.x(如 11.8)与系统兼容性较好。
- 安装命令示例(CUDA 11.8):
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run sudo sh cuda_11.8.0_520.61.05_linux.run
Ubuntu 22.04
- 推荐 CUDA 版本:优先选择 CUDA 12.x(如 12.1),原生支持 GCC 11。
- 如果必须使用 CUDA 11.x,可能需要手动降级 GCC(不推荐)或使用
conda环境安装 CUDA。 - 安装命令示例(CUDA 12.1):
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run sudo sh cuda_12.1.0_530.30.02_linux.run
3. PyTorch 安装差异
PyTorch 安装命令主要取决于 CUDA 版本,与 Ubuntu 版本无关。但需注意:
- Ubuntu 22.04 + CUDA 12.x:使用 PyTorch 官方提供的 CUDA 12.x 安装命令。
- Ubuntu 20.04 + CUDA 11.x:使用对应的 CUDA 11.x 命令。
PyTorch 安装示例
- CUDA 11.8(适用于 Ubuntu 20.04/22.04):
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 - CUDA 12.1(推荐用于 Ubuntu 22.04):
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
4. 驱动兼容性
- Ubuntu 22.04:默认使用较新的内核(如 5.15+),需要安装 NVIDIA 驱动 ≥ 515 以支持 CUDA 12.x。
- Ubuntu 20.04:内核较旧(如 5.4+),驱动兼容性更广(≥ 450 即可支持 CUDA 11.x)。
5. 推荐安装方案
Ubuntu 20.04
# 1. 安装驱动(推荐使用驱动版本 ≥ 470)
sudo apt install nvidia-driver-470
# 2. 安装 CUDA 11.8(兼容性好)
# 从 NVIDIA 官网下载 runfile 或使用网络安装包
# 3. 安装 PyTorch(CUDA 11.8)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
Ubuntu 22.04
# 1. 安装驱动(推荐使用驱动版本 ≥ 525)
sudo apt install nvidia-driver-525
# 2. 安装 CUDA 12.1(原生支持 GCC 11)
# 从 NVIDIA 官网下载 runfile
# 3. 安装 PyTorch(CUDA 12.1)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
6. 注意事项
- 使用
conda简化安装:通过conda安装 PyTorch 可自动处理 CUDA 依赖,避免系统环境冲突。conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch - 验证安装:安装后运行以下命令验证:
import torch print(torch.cuda.is_available()) # 应返回 True print(torch.version.cuda) # 查看 CUDA 版本
总结
- 差异主要在于:Ubuntu 22.04 的 GCC 版本较新,推荐使用 CUDA 12.x 以避免兼容性问题。
- 安装流程相似:驱动 → CUDA → PyTorch,但需根据系统版本选择匹配的 CUDA 版本。
- 建议:优先使用 Ubuntu 22.04 + CUDA 12.x + PyTorch(CUDA 12.1) 组合,以获得更好的长期支持和新特性。
CLOUD技术笔记