- 首页 >
- 问答 >
-
智能运维 >
- CentOS上PyTorch GPU加速配置方法
CentOS上PyTorch GPU加速配置方法
小樊
51
2026-01-11 03:56:22
CentOS上PyTorch GPU加速配置指南
一 环境准备与兼容性核对
- 确认系统为CentOS 7/8,更新系统并安装基础工具:sudo yum update -y;sudo yum groupinstall -y “Development Tools”;sudo yum install -y epel-release kernel-devel-$(uname -r) kernel-headers gcc make cmake3 git wget python3 python3-devel python3-pip。建议全程在虚拟环境(venv/conda)中进行。显卡型号与驱动版本可用 lspci | grep -i nvidia 与 nvidia-smi 查看。PyTorch的GPU版本需要与CUDA版本匹配,再由CUDA匹配cuDNN版本,三者任一不兼容都会导致不可用或性能问题。
二 安装NVIDIA驱动
- 禁用Nouveau开源驱动:创建 /etc/modprobe.d/blacklist-nouveau.conf,写入 blacklist nouveau 与 options nouveau modeset=0;执行 dracut --force 并重启。进入文本模式:sudo systemctl set-default multi-user.target && sudo reboot。安装匹配显卡的官方驱动(.run 文件):sudo sh NVIDIA-Linux-x86_64-XXX.run,完成后切回图形模式并重启。用 nvidia-smi 验证驱动与GPU状态(应显示驱动版本、CUDA版本与GPU列表)。如已安装但版本过旧,建议先卸载旧版再装新版。
三 安装CUDA与cuDNN
- 安装CUDA Toolkit(示例为11.7):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。配置环境变量(写入 ~/.bashrc 或 /etc/profile):export PATH=/usr/local/cuda-11.7/bin:$PATH;export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64:$LD_LIBRARY_PATH;执行 source ~/.bashrc。验证:nvcc --version 应显示11.7。安装与CUDA匹配的cuDNN(示例为8.2.2 for CUDA 11.7):tar -xzvf cudnn-11.7-linux-x64-v8.2.2.26.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*。注意:cuDNN版本必须与CUDA版本严格对应。
四 安装PyTorch GPU版本
- 建议使用conda或pip在隔离环境中安装与CUDA匹配的PyTorch版本。示例(CUDA 11.7):conda create -n torch-gpu python=3.9 -y;conda activate torch-gpu;conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia。或使用pip:pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117。安装完成后进入Python验证:import torch;print(torch.cuda.is_available()) 应为True;print(torch.cuda.get_device_name(0)) 显示GPU型号;print(torch.version.cuda) 应与安装的CUDA主版本一致。
五 Docker容器化方案与常见问题
- 容器化方案(便于复现与迁移):安装Docker(sudo yum install -y docker-ce docker-ce-cli containerd.io;sudo systemctl start docker && sudo systemctl enable docker),安装NVIDIA Container Toolkit(参考官方指引添加仓库并安装 nvidia-docker2;sudo systemctl restart docker),拉取镜像:sudo docker pull pytorch/pytorch:latest,启动容器并验证GPU:sudo docker run --gpus all -it --rm pytorch/pytorch:latest python -c “import torch;print(‘CUDA可用性:’, torch.cuda.is_available())”。常见问题排查:nvidia-smi 正常但 torch.cuda.is_available() 为 False,多为PyTorch与CUDA版本不匹配或cuDNN未正确放置;驱动安装失败多与Secure Boot、未禁用Nouveau、内核头文件不匹配有关;多用户/多GPU训练建议使用DistributedDataParallel替代 DataParallel,并注意NCCL与网络配置。