一、故事背景
在学习pytorch中,
使用 cuda 报错 AssertionError: Torch not compiled with CUDA enabled
import torch
print(torch.cuda.is_available()) # 检查cuda是否可用,False
print(torch.version.cuda) # 查看cuda版本,None
print(torch.backends.cudnn.is_available()) # 检查cudnn是否可用,False
print(torch.backends.cudnn.version()) # 查看cudnn版本,None
dev = torch.device('cuda')
x = torch.tensor([1, 2, 3], device=dev)
print(x) # 报错 AssertionError: Torch not compiled with CUDA enabled
根本原因:torch依赖版本是cpu的,不是cuda的
为什么之前安装的是cpu版本,因为安装时找不到gpu版本的,所以默认安装cpu版本的
想要获取指定版本的安装命令:https://pytorch.org/get-started/previous-versions/
二、查看电脑的cuda驱动版本
命令:nvidia-smi
所以需要下载 11.6 版本的
如果安装的版本不对,后面运行会报错:
CUDA driver version is insufficient for CUDA runtime version Result = FAIL
三、卸载之前的cuda程序
如果你之前安装了cuda或者自带安装了,需要卸载除了下面文件以外的文件
即,以上的不能卸载
我电脑默认是没有安装cuda的,即没有 NVIDIA GPU Computing Toolkit 文件夹
四、下载 cuda
下载地址:https://developer.nvidia.com/cuda-toolkit-archive
我选的是11.6.2
五、安装 cuda11.6
1、默认路径
2、点继续
3、点 自定义
4、取消部分
6、选择安装路径,默认
后面点【下一步】和【关闭】即可
五、安装 cuDNN
1、下载
下载地址:https://developer.nvidia.com/rdp/cudnn-archive
2、解压
3、将这3个文件夹 拷贝到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6
进行合并
六、重新安装PyTorch
1、运行之前代码,还是不行。
conda list 查看依赖
之前的 torch 是cpu版本的
2、重新安装
conda create -n pytorch1.13.1 python=3.8
conda activate pytorch1.13.1
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.6 -c pytorch -c nvidia
3、运行之前的demo,成功
import torch
print(torch.cuda.is_available()) # 检查cuda是否可用,True
print(torch.version.cuda) # 查看cuda版本,11.6
print(torch.backends.cudnn.is_available()) # 检查cudnn是否可用,True
print(torch.backends.cudnn.version()) # 查看cudnn版本,8302
dev = torch.device('cuda')
x = torch.tensor([1, 2, 3], device=dev)
print(x) # tensor([1, 2, 3], device='cuda:0')
参考:https://blog.csdn.net/Dr_Cv/article/details/132826877
https://blog.csdn.net/virobotics/article/details/136322017
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏