torch.cuda.is_available()返回false——解决办法
torch.cuda.is_available()返回false——解决办法
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
提示:这里可以添加本文要记录的大概内容:
安装完cudatoolkit和GPU版本的pyTorch、pytorchvision、 torchaudio后,使用官网提供的代码测试pytorch是否调用GPU时,返回false的问题解决。
import torch
torch.cuda.is_available()
提示:以下是本篇文章正文内容,下面案例可供参考
问题分析
产生该问题的情况有
1、使用了镜像下载,误下成cpu版本
你以为下载的是GPU版本,其实镜像下载的是cpu版本你必须手动去官网用pip下载安装
检查是否存在该问题的方法:
1.打开cmd,进入你出现该问题的环境,输入
python
import torch
print(torch.__version__)
若输出为版本号+cpu 则说明是该问题造成,也可通过
conda list
指令查看所安装的pytorch包版本,若build 列对应有cpu开头的包也可说明是这个问题造成,如下图所示。
解决方法:
重装GPU版本的pyTorch、pytorchvision、 torchaudio 具体方法参考该博主写的博客
2.pytorch版本与CUDN不配套
安装pyTorch、pytorchvision、 torchaudio 时并没有指定具体版本,例如我开始用
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu111
进行安装,完毕后用torch.cuda.is_available()检查发现返回false。之后通过pip list
检查发现pytorch版本号太高,与我的CUDN版本(11.1)不配。解决办法:
使用
pip uninstall torch torchvision torchaudio
卸载”错误“版本,再使用如下指令重新安装(以cuda11.1为例)pip --default-timeout=1000 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html
说明: 使用–default-timeout=1000解决网速过慢导致超时下载失败的可能。(参考的该博客)
部分cuda版本对应的torch版本需要加上 cu+cuda版本号 后缀的torch版本才能正常匹配相应CUDA。 例如,CUDA10.1 对应下载torch1.5的时候,应该下载pip install torch==1.5.1+cu101 torchvision==0.6.1+cu101
。验证
进入环境后输入
python
,进入解释器,输入下面代码,查看输出,为True,则说明成功import torch torch.cuda.is_available()
附CUDN版本号查看方式 及 CUDN版本号与pytorch版本对应关系,以便自查 CUDN版本号查看方式 :
win+r,cmd进入命令行,输入nvidia-smi查看显卡信息,若显示
‘nvidia-smi’ 不是内部或外部命令,也不是可运行的程序 或批处理文件
则cd + nvidia-smi 所在文件夹位置后再输入该指令如下图所示。
CUDN版本号与pytorch版本对应关系
更多推荐
所有评论(0)