Ubuntu下如何配置PyTorch环境
小樊
34
2025-12-30 11:51:07
Ubuntu下配置PyTorch环境
一 准备与版本选择
- 更新系统并安装基础工具:sudo apt update && sudo apt upgrade -y && sudo apt install -y python3 python3-pip build-essential
- 选择环境工具:优先使用虚拟环境隔离依赖,常见为 venv/ virtualenv 或 conda/Miniconda
- 选择安装方式:GPU 场景建议用 conda(自带 cudatoolkit,依赖更可控);CPU 或容器化场景常用 pip
- 版本匹配关键点:
- 查看驱动与 CUDA 运行时:nvidia-smi(右上显示 Supported/Runtime CUDA)
- 查看本地 CUDA Toolkit:nvcc --version(若未安装 Toolkit,可仅用 conda 的 cudatoolkit)
- Python 建议使用 3.8–3.11(与多数 PyTorch 版本兼容)
- 版本选择原则:PyTorch 版本需与 CUDA 版本匹配;不确定时,用 conda 指定 cudatoolkit 版本更稳妥
二 安装与配置步骤
- 方案A Conda(推荐,GPU 更省心)
- 安装 Miniconda:wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && bash Miniconda3-latest-Linux-x86_64.sh && source ~/.bashrc
- 创建环境:conda create -n pytorch_env python=3.10 -y && conda activate pytorch_env
- 安装 PyTorch(按 CUDA 选择其一):
- CPU:conda install pytorch torchvision torchaudio cpuonly -c pytorch
- CUDA 11.8:conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
- CUDA 12.1:conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
- 方案B venv + pip(轻量通用)
- 创建并激活:python3 -m venv ~/venvs/pt && source ~/venvs/pt/bin/activate
- 升级 pip:pip install -U pip
- 安装 PyTorch(按 CUDA 选择其一):
- CPU:pip install torch torchvision torchaudio
- CUDA 11.x(示例 11.8):pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
- 历史版本可用 cu111/cu113 等 whl 索引;如需精确版本,见 PyTorch 官方“Get Started”页生成命令
- 可选 系统级 CUDA/cuDNN(仅在需要系统级开发或特殊驱动时使用)
- 驱动:sudo ubuntu-drivers autoinstall 或 sudo apt install nvidia-driver-
- CUDA:从 NVIDIA 下载 run 包安装,并在 ~/.bashrc 设置 PATH/LD_LIBRARY_PATH
- cuDNN:按版本解压并复制到 /usr/local/cuda 对应目录,设置权限
三 验证安装
- 基础版本与设备检查:
- python - <<‘PY’
import torch, torchvision, torchaudio
print(“torch:”, torch.version, “torchvision:”, torchvision.version, “torchaudio:”, torchaudio.version)
print(“cuda available:”, torch.cuda.is_available())
if torch.cuda.is_available():
print(“device count:”, torch.cuda.device_count())
print(“current device:”, torch.cuda.current_device())
print(“device name:”, torch.cuda.get_device_name())
PY
- 预期:输出版本号,且 cuda available 为 True(GPU 环境);CPU 环境为 False
四 常见问题与排错
- 驱动与 CUDA 不匹配
- 现象:nvidia-smi 显示的 CUDA 与 nvcc 不一致,或 torch.cuda.is_available() 为 False
- 处理:优先用 conda 安装匹配版本的 cudatoolkit;或在系统安装与 PyTorch 兼容的驱动与 CUDA Toolkit
- 虚拟环境未激活
- 现象:python/pip 指向系统解释器,包安装到全局
- 处理:conda activate 或 source /bin/activate 后再安装/运行
- 权限与缓存问题
- 现象:PermissionError 或安装缓慢
- 处理:避免使用 sudo pip;必要时用 pip install --user;升级 pip 并清理缓存 pip cache purge
- 需要特定版本
- 处理:在 PyTorch 官方“Get Started”页面选择系统/包管理/Python/CUDA 组合,复制生成的安装命令执行