首先确保系统处于最新状态,避免因旧版本软件包导致兼容性问题:
sudo yum update -y
PyTorch的编译和运行需要Python环境、构建工具及基础开发库,需安装以下组件:
# 安装开发工具组(包含gcc、make等)
sudo yum groupinstall -y "Development Tools"
# 安装Python3及相关开发包(python3-devel用于编译Python扩展)
sudo yum install -y python3 python3-devel python3-pip
# 安装构建工具(cmake用于C++项目构建)
sudo yum install -y cmake3 git wget
为避免与其他项目依赖冲突,建议使用虚拟环境隔离PyTorch及其依赖:
# 创建虚拟环境(名称自定义,如pytorch_env)
python3 -m venv pytorch_env
# 激活虚拟环境
source pytorch_env/bin/activate
根据是否需要GPU加速,选择对应的安装方式:
直接通过pip安装官方提供的CPU版本,无需额外配置CUDA:
pip3 install --upgrade pip # 升级pip至最新版(避免版本冲突)
pip3 install torch torchvision torchaudio
需提前安装CUDA Toolkit和cuDNN,再通过pip安装对应版本的PyTorch:
步骤1:安装CUDA Toolkit
访问NVIDIA CUDA Toolkit下载页面,选择与GPU型号匹配的版本(如CUDA 11.7),下载RPM安装包并运行:
wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
sudo sh cuda_11.7.0_515.43.04_linux.run # 按提示完成安装(取消勾选“安装NVIDIA驱动”若已安装)
# 配置环境变量(添加至~/.bashrc)
echo 'export PATH=/usr/local/cuda-11.7/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
步骤2:安装cuDNN
访问NVIDIA cuDNN下载页面,选择与CUDA版本兼容的cuDNN(如CUDA 11.7对应cuDNN 8.5+),下载并解压后复制文件至CUDA目录:
tar -xzvf cudnn-11.7-linux-x64-v8.5.0.96.tgz
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
步骤3:安装PyTorch
根据CUDA版本选择官方提供的安装命令(以CUDA 11.7为例):
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117
安装完成后,通过Python代码验证PyTorch是否正常工作及GPU是否可用:
import torch
print("PyTorch版本:", torch.__version__) # 输出PyTorch版本号
print("CUDA是否可用:", torch.cuda.is_available()) # 若为True则表示GPU可用
pip install --upgrade pip setuptools
pip install --force-reinstall torch torchvision torchaudio
torch.cuda.is_available()返回False,需检查CUDA/cuDNN版本是否与PyTorch版本兼容(参考PyTorch官网兼容性表)。-i https://pypi.tuna.tsinghua.edu.cn/simple至pip命令)。通过以上步骤,可解决CentOS系统下PyTorch的依赖问题,顺利安装并运行PyTorch。若仍有疑问,建议参考PyTorch官方文档或社区论坛获取最新支持。