温馨提示×

PyTorch在Ubuntu上怎么运行

小樊
42
2025-12-06 21:23:53
栏目: 智能运维

在 Ubuntu 上运行 PyTorch 的完整步骤

一 准备环境

  • 更新系统并安装基础工具:
    • sudo apt update && sudo apt upgrade
    • sudo apt install -y python3 python3-pip build-essential
  • 建议创建隔离环境(二选一):
    • 使用 venv:
      • sudo apt install -y python3-venv
      • python3 -m venv ~/pytorch-env
      • source ~/pytorch-env/bin/activate
    • 使用 conda(Miniconda):
      • 下载并安装 Miniconda,然后创建环境:
        • conda create -n pytorch-env python=3.10 -y
        • conda activate pytorch-env
  • 升级 pip:python -m pip install -U pip 以上步骤完成后,后续安装与运行都在激活的虚拟环境中进行。

二 安装 PyTorch

  • CPU 版本(最通用):
    • pip install torch torchvision torchaudio
  • GPU 版本(pip,按 CUDA 版本选择其一):
    • CUDA 11.8:pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
    • CUDA 12.1:pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
  • GPU 版本(conda,内置 cudatoolkit,无需单独装 CUDA):
    • conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
  • 说明:
    • 若不确定 CUDA 版本,可先装 CPU 版,或到 PyTorch 官网生成与你系统匹配的命令。
    • 使用 conda 时优先选择带 cudatoolkit 的构建,减少驱动/库不匹配问题。

三 验证安装与运行第一个程序

  • 验证安装:
    • python - <<‘PY’ import torch print(“PyTorch version:”, torch.version) print(“CUDA available:”, torch.cuda.is_available()) if torch.cuda.is_available(): print(“CUDA device count:”, torch.cuda.device_count()) print(“Current device:”, torch.cuda.current_device()) print(“Device name:”, torch.cuda.get_device_name(0)) PY
  • 运行示例脚本 test.py:
    • nano test.py
    • 粘贴:
      • import torch x = torch.rand(5, 3) y = torch.rand(5, 3) z = torch.matmul(x, y) print(z)
    • 运行:python test.py
  • 启用 GPU(若可用):
    • device = torch.device(“cuda” if torch.cuda.is_available() else “cpu”)
    • x, y = x.to(device), y.to(device)
    • z = torch.matmul(x, y) 以上验证与示例覆盖了版本、CUDA 可用性以及最小矩阵运算。

四 GPU 排错要点

  • 驱动与工具链:
    • 查看推荐驱动:ubuntu-drivers devices
    • 安装驱动(示例):sudo apt install nvidia-driver-535(按推荐版本安装)
    • 若使用系统 CUDA,设置环境变量(示例路径,按实际安装版本调整):
      • echo ‘export PATH=/usr/local/cuda/bin:$PATH’ >> ~/.bashrc
      • echo ‘export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH’ >> ~/.bashrc
      • source ~/.bashrc
  • 版本匹配:
    • 驱动版本需与 CUDA 版本匹配;conda 方案用内置 cudatoolkit 通常更省心。
  • 常见症状与处理:
    • torch.cuda.is_available() 为 False:检查驱动是否加载(nvidia-smi)、是否安装了对应 CUDA 的 PyTorch 包、是否在虚拟环境中正确激活。
    • 导入 torch 报 libcudart.so 找不到:通常是 CUDA 库路径未加入环境变量或版本不匹配,优先用 conda 的 cudatoolkit 方案或修正 LD_LIBRARY_PATH。

0