Ubuntu-安装GPU版本的PyTorch和PaddlePaddle

说明:

(1)不用单独安装cuda和cudnn,GPU版的PyTorch和新版的PaddlePaddle安装会自动处理cuda和cudnn的安装
(2)PyTorch和PaddlePaddle自动安装的cuda和cudnn会有冲突
(3)本文介绍安装GPU版本的PyTorch和PaddlePaddle共存方法

1.测试GPU显卡

nvidia-smi
nvidia-smi -i 0 q

2.安装如下版本的PyTorch和PaddlePaddle

PyTorch-v2.6.0 (PyTorch-v2.2.2)
PaddlePaddle-v3.0.0

3.更新pip

pip -V
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
pip -V

4.安装PyTorch-v2.6.0

# CUDA 12.4
pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 --index-url https://download.pytorch.org/whl/cu124
python -c "import torch;print(torch.__version__)" #2.6.0+cu124

5.安装PaddlePaddle-v3.0.0

python -m pip install --pre paddlepaddle-gpu -i https://www.paddlepaddle.org.cn/packages/nightly/cu126/

Collecting paddlepaddle-gpu
  Downloading https://paddle-whl.bj.bcebos.com/nightly/cu126/paddlepaddle-gpu/paddlepaddle_gpu-3.0.0.dev20250705-cp310-cp310-linux_x86_64.whl (1722.9 MB)
  Downloading https://paddle-whl.bj.bcebos.com/nightly/cu126/paddlepaddle-gpu/paddlepaddle_gpu-3.0.0.dev20250724-cp310-cp310-linux_x86_64.whl (1728.2 MB)

然后出一堆有关torch的软件包依赖冲突提示:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.

torch 2.6.0+cu124 requires nvidia-cublas-cu12==12.4.5.8; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cublas-cu12 12.6.4.1 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cuda-cupti-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cuda-cupti-cu12 12.6.80 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cuda-nvrtc-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cuda-nvrtc-cu12 12.6.77 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cuda-runtime-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cuda-runtime-cu12 12.6.77 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cudnn-cu12==9.1.0.70; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cudnn-cu12 9.5.1.17 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cufft-cu12==11.2.1.3; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cufft-cu12 11.3.0.4 which is incompatible.
torch 2.6.0+cu124 requires nvidia-curand-cu12==10.3.5.147; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-curand-cu12 10.3.7.77 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cusolver-cu12==11.6.1.9; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cusolver-cu12 11.7.1.2 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cusparse-cu12==12.3.1.170; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cusparse-cu12 12.5.4.2 which is incompatible.
torch 2.6.0+cu124 requires nvidia-cusparselt-cu12==0.6.2; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-cusparselt-cu12 0.6.3 which is incompatible.
torch 2.6.0+cu124 requires nvidia-nccl-cu12==2.21.5; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-nccl-cu12 2.25.1 which is incompatible.
torch 2.6.0+cu124 requires nvidia-nvjitlink-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-nvjitlink-cu12 12.6.85 which is incompatible.
torch 2.6.0+cu124 requires nvidia-nvtx-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64", but you have nvidia-nvtx-cu12 12.6.77 which is incompatible.
Successfully installed anyio-4.9.0 exceptiongroup-1.3.0 h11-0.16.0 httpcore-1.0.9 httpx-0.28.1 nvidia-cublas-cu12-12.6.4.1 nvidia-cuda-cccl-cu12-12.6.77 nvidia-cuda-cupti-cu12-12.6.80 nvidia-cuda-nvrtc-cu12-12.6.77 nvidia-cuda-runtime-cu12-12.6.77 nvidia-cudnn-cu12-9.5.1.17 nvidia-cufft-cu12-11.3.0.4 nvidia-cufile-cu12-1.11.1.6 nvidia-curand-cu12-10.3.7.77 nvidia-cusolver-cu12-11.7.1.2 nvidia-cusparse-cu12-12.5.4.2 nvidia-cusparselt-cu12-0.6.3 nvidia-nccl-cu12-2.25.1 nvidia-nvjitlink-cu12-12.6.85 nvidia-nvtx-cu12-12.6.77 opt_einsum-3.3.0 paddlepaddle-gpu-3.0.0.dev20250724 protobuf-6.31.1 sniffio-1.3.1

但实测 PyTorch 和 PaddlePaddle 均能正常使用(相应的cuda和cudnn向下兼容)

python -c "import torch;print(torch.__version__)" #2.6.0+cu124
python -c "import paddle;print(paddle.__version__)" #3.0.0
python -c "import paddle;print(paddle.utils.run_check())"

原文链接:https://mp.weixin.qq.com/s/XOwiAz9kqn0hFrGoL-PhRg

posted @ 2025-08-04 10:34  peakgrin  阅读(327)  评论(0)    收藏  举报