建立国内镜像通道

命令行中输入如下命令

conda config --add channels http://mirror.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels http://mirror.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ 
conda config --add channels http://mirror.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 
conda config --append channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

查看是否添加通道

conda config --set show_channel_urls yes
conda config --set  ssl_verify false
conda config --show channels

显示如下,可以通过判断是否完成

pytorch 模型没在gpu上跑 pytorch不用gpu_CUDA


 查找cuda、cudnn、Pytorch(GPU)及cuda和NVIDIA显卡驱动对应关系

查询可支持的最高cuda版本

>nvidia-smi

 

pytorch 模型没在gpu上跑 pytorch不用gpu_人工智能_02

 我的显卡驱动是Driver Version:528.52.,查看支持的cuda(链接)。

pytorch 模型没在gpu上跑 pytorch不用gpu_人工智能_03

我的为528.52,那么左边对应的CUDA都可以兼容,这样就可以直接去考虑下载cuda就可以了。

右上角为CUDA 版本,可以看到该电脑可以支持的cuda版本最高是12.0,驱动是向下兼容的,所以cuda版本小于等于12.0的都可以安装上,因此我选择了 11.8。我之前安装过12.0,需要在安装一个11.8的duda

查看自己是否已经安装CUDA

nvcc -V

显示如下,表明已经安装

pytorch 模型没在gpu上跑 pytorch不用gpu_pytorch_04


安装cuda11.8

确定自己安装的CUDA版本后查看对应关系

可以用新版本的安装方式

pytorch 模型没在gpu上跑 pytorch不用gpu_python_05

也可以用老版本的安装范式

 TensorFlow、PyTorch各版本对应的CUDA、cuDNN关系

去官网(Previous PyTorch Versions | PyTorch)找到了pytorch1.7版本的conda安装命令。后面的-c是官网提供的安装地址,因为我们第1步添加了清华园镜像通道(国内速度更快),因此去掉-c以及后面的命令。

pytorch 模型没在gpu上跑 pytorch不用gpu_pytorch 模型没在gpu上跑_06


创建pytorch的环境

注意2.0对应的版本python版本为3.8-3.11,我这选用3.9

输入以下命令

conda create -n pytorch_GPU python=3.9
conda activate pytorch_GPU

使用官网命令安装 ,可以把-c后面去掉,因为已经设置镜像源了

建议大家用pip安装,因为用conda容易引起环境冲突,对了pytorch2.0,需要python>=3,8.还有就是conda里面的包更新可能比较慢,找不新包,尤其是在安装最新的pytorch2.0的时候。

conda install pytorch torchvision torchaudio pytorch-cuda=11.8
pip install torch==2.0.0+cu118 torchvision==0.15.1+cu118 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu118

pytorch 模型没在gpu上跑 pytorch不用gpu_python_05

搭配jupyter notebook

#设置jupyter的内核
pip install ipykernel -i https://pypi.tuna.tsinghua.edu.cn/simple/
python -m ipykernel install --name pytorch_cpu

#测试是否可以用
import torch
print(torch.__version__)
print(torch.cuda.is_available())

成功!!!! 

pytorch 模型没在gpu上跑 pytorch不用gpu_CUDA_08

总结 

     当使用conda环境安装的时候,如果包环境冲突的错误,大概率是因为镜像源或者conda更新太慢,找不见对应的包,两种解决方式

  • 降低pytorch版本
  • 使用pip环境