Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX

这个问题来源于我想用我电脑的古董显卡跑一个开源程序,结果测试的时候下面的代码输出False,我就无法用显卡跑。

import torch
print(torch.cuda.is_available())

目录

一、确定pytorch版本

二、确定cuda版本,下载cuda

三、下载对应版本的cuDNN

四、验证是否安装成功 

 五、安装对应版本的pytorch

六、最后


一、确定pytorch版本

首先要先确定代码用的pytorch版本或者本机的pytorch版本,因为pytorch 的版本和cuda版本是有一个对应关系的。下面是我需要的pytorch版本,pytorch1.6,

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第1张图片  

二、确定cuda版本,下载cuda

在官网上找到对应的cuda版本Previous PyTorch Versions | PyTorch

 可以看到匹配的cuda版本是cuda 9.2,cuda10.1,cuda10.2。

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第2张图片

 一般电脑硬件都是支持的,只要电脑显卡支持的版本大于这个版本就可以。可以在NVIDIA控制面板查看。我的支持到11.8是可以的。如果自己的nvidia版本过高或者过低,但是官网展示的驱动版本列表不符合你的要求,可以参考下面的教程,增加驱动列表的长度,找到合适的驱动的版本。如何下载英伟达nvidia旧版显卡驱动,一顿操作猛如虎,居然给我找到了方法 - 哔哩哔哩

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第3张图片

 所以就可以开始安装了,先去官网找对应的10.2版本安装CUDA Toolkit Archive | NVIDIA Developer

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第4张图片

三、下载对应版本的cuDNN

这几个支持的随便选一个下载都行, 

cuDNN Archive | NVIDIA DeveloperCuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第5张图片

 下载后解压,然后将cuDNN中bin,include,lib文件夹里的文件,分别复制到CUDA的bin,include,lid文件夹中。

四、验证是否安装成功 

来到cuda安装的文件地址,在里面找到bandwidthTest.exe,按住shift键,右击 bandwidthTest.exe文件,复制文件地址,然后打开cmd直接粘贴进去然后回车。看到pass就是对了

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第6张图片

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第7张图片

 如果有问题的话 ,就配一下环境变量。一般都会自动配置上环境变量的。

 五、安装对应版本的pytorch

https://download.pytorch.org/whl/torch_stable.html 去这个网站下载对应的轮子

最前面是cu102,就是cuda10.2版本的意思

Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第8张图片  下载结束以后,打开cmd ,cd到whl文件所在的位置,运行命令:pip install whl文件的名字 ,就可以安装pytorch了。

比如:

pip install torch-1.6.0-cp37-cp37m-win_amd64.whl

六、最后

最后再运行一下 

import torch
print(torch.cuda.is_available())

 Cuda CuDnn Pytorch 安装 print(torch.cuda.is_available())输出报错。NVDIA 940MX_第9张图片

返回True就可以了

你可能感兴趣的:(pytorch,深度学习,python)