文章目录

  • 问题描述:
  • 问题分析:
  • 问题解决:
  • 一、Anaconda下载安装(电脑已安装Anaconda的可忽略这一步)
  • 二、修改下载源为清华源(之前配置过的建议也再重新配置一遍)
  • 三、查看自己电脑的CUDA版本
  • 四、创建独立虚拟环境
  • 五、安装pytorch
  • 六、到自己的开发IDE里选用虚拟环境


问题描述:

在跑项目时遇到了以下问题:

  1. RuntimeError: CUDA error: no kernel image is available for execution on the device.
  2. Anaconda安装pytorch遇到一直循环Solving environment问题
  3. CondaHTTPError:HTTP 000 CONNECTION FAILED for url<https://mirrors.tuna.tsinghua.edu.cn/anaconda***
  4. Executing transaction: failed

问题分析:

  1. 是pytorch和电脑自身cuda版本不匹配的问题。
  2. 在安装pytorch时一直报错也是pytorch版本的问题。
  3. 清华源配置问题
  4. 上述问题4也是pytorch版本问题

问题解决:

本文章主旨是重装pytorch以及配置清华源来解决以上问题,内容很全,很详细。

一、Anaconda下载安装(电脑已安装Anaconda的可忽略这一步)

阿里云盘:https://www.aliyundrive.com/s/tMD73f38roZ
百度网盘:https://pan.baidu.com/s/18pNHDK4eiHNDYAXFcu1zmA 提取码:6666
夸克网盘:https://pan.quark.cn/s/b7c198c4b7b7

下载完成后双击打开安装包,然后一路next就行
!!!!到这一步的时候需要注意一下

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_python


一定要把Add Anaconda to my PATH environment variable勾选上,因为默认是不勾选的,这步是自动配置环境变量,不勾选的话自己配置会有点麻烦。到最后一步显示successfully就是安装成功了。

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_python_02

二、修改下载源为清华源(之前配置过的建议也再重新配置一遍)

  1. 按住win键+q搜索找到Anaconda Prompt (anaconda)命令窗口,并打开:
  2. 输入命令,创建.condarc文件
conda config --set show_channel_urls yes

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_CUDA_03


3. 输入命令回车后,会在C盘的用户目录(这个目录和安装Anaconda的目录没有关系)生成一个.condarc文件

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_虚拟环境_04


4. 右键用记事本打开,将.condarc原有的内容清空后将以下内容粘贴在.condarc文件中,保存退出。

自己之前配置过的话建议也再配置一次,我之前配置过但是还是报错,重新配置之后就好了。

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

三、查看自己电脑的CUDA版本

  1. win键+r运行cmd:

    2.命令行输入nvidia-smi并回车

    CUDA Version:后面的就是自己电脑的CUDA版本
    这里我的版本就是11.6

四、创建独立虚拟环境

继续打开之前的Anaconda Prompt (anaconda)命令窗口输入(中间的pytorch-gpu是虚拟环境的名称,可以自己取):

conda create -n pytorch-gpu python=3.8

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_python_05


到这一步后输入y然后回车。

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_CUDA_06


直到出现这个界面,并且显示done就表明虚拟空间创建成功,如果这里出现失败的话大概率就是前面第二步修改清华源的问题,建议跟着第二步再重新配置一下。

五、安装pytorch

  1. 打开pytorch官网:https://pytorch.org/get-started/locally/选择自己的配置。

    我们用anaconda安装所以package那里选Conda,laguage选python,CUDA这里选自己的版本
    注意!!如果cuda版本是11.6的朋友这里不建议用这个11.6的包,选比自己cuda版本第的版本都是可以用的。
    如果在上述界面找不到自己电脑的cuda版本的话可以去pytorch官网提供的历史版本中去选择:
    pytorch历史版本:https://pytorch.org/get-started/previous-versions/

可以看到这里有10.2、11.3、11.6版本的,这里我选择11.3版本的(低于我电脑cuda11.6版本的都可以用,之前我选用11.6的安装一直失败,不知道出了什么问题,所以建议安装低版本的。
复制命令conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch 再次打开Anaconda Prompt (anaconda)命令窗口
输入

conda activate pytorch-gpu

切换到刚才创建的虚拟环境中然后粘贴安装命令并回车conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_pytorch_07


2. 出现y/n?的时候一直输入y就可以了。

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_python_08


最后把所有需要的包下载安装完成后会显示一个done:

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_虚拟环境_09


3. 检查是否安装成功

进入Anaconda Prompt (anaconda)命令窗口,先输入conda activate pytorch-gpu切换到刚才创建的虚拟环境中。然后依次输入:

python

import torch

print(torch.cuda.is_available())

每输入一行就点一次回车(可能有的朋友一直用IDE写python的,命令行不会用,在这里说明一下)

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_pytorch_10


如果显示True的话,那么恭喜你pythorch已经安装成功!

注:图片里我切换到的PyTorch虚拟环境是我之前安装的一个虚拟环境,写到这里的时候pytorch-gpu虚拟环境里的pytorch还没安装完,所以就先选用这个用于展示。这里如果是一直跟着这篇文章做下来的朋友输入pytorch-gup就可以,这个名字是自己设置的,想用什么就用什么。


六、到自己的开发IDE里选用虚拟环境

这里我用pychrm演示:

File–>settings–>project interpreter

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_pytorch_11


点击齿轮图标选择add

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_python_12


选择CondaEnvironment–>Existing environment然后和下图设置一样之后点击ok就好了。

cuda opencv pytorch 关系 cuda和pytorch版本不匹配_pytorch_13