GET was unable to find an engine to execute this computation解决方案

news/2025/2/13 2:12:46/

错误

好久没玩torch了,直接装了个最新版本的torch2.0.1+cu117版本, python是3.9

之后在运行代码的时候出现了以下的错误

RuntimeError: GET was unable to find an engine to execute this computation

如果要是cpu跑没有任何报错,但是如果是gpu跑的话就会出现如上错误

class CNNModel(nn.Module):def __init__(self, input_size, num_classes):super(CNNModel, self).__init__()self.conv = nn.Sequential(nn.Conv1d(in_channels=input_size, out_channels=32, kernel_size=3, padding=1),nn.ReLU(),nn.Conv1d(in_channels=32, out_channels=64, kernel_size=3, padding=1),nn.ReLU(),nn.Conv1d(in_channels=64, out_channels=128, kernel_size=3, padding=1),nn.ReLU(),)self.fc1 = nn.Sequential(nn.Linear(128, 64),nn.ReLU(),nn.Dropout(0.5),)self.fc2 = nn.Linear(64, num_classes)def forward(self, x):out = self.conv(x)out = torch.flatten(out, start_dim=1)out = self.fc1(out)out = self.fc2(out)return outx = torch.zeros(64, 128, 1).cuda()
model = CNNModel(input_size=128, num_classes=6)
model.cuda()
model(x)

跑这个代码

c101423b56aa03469b5d43310a630aa1.png

解决方案

我之前写的大多都是torch1.x的操作

torch2.0 看文档 主要是提升了模型运行速度的能力(针对大模型,新增了torch.compile能力),可以向下兼容,但是我发现很多人在使用过程中都出现了这个问题,具体原因还没有搞清楚,主要出现在conv1d的环节,lstm正常。

解决方案就是把目前这个torch卸载掉,安装以前的版本

我这里使用的依旧是anaconda,我建议直接把虚拟环境删掉,重新建立,因为torch卸载有的时候不干净,安装新的torch会有各种冲突,很麻烦。

假设我门目前使用的虚拟环境时new_env1

# 删掉该环境(谨慎点,如果不方便可以先不删,重新建立新的环境)
conda remove -n new_env1 --all
# 创建新的虚拟环境
conda create -n new_env2 python=3.9

因为torch torchvision cuda以及python版本都是一一有兼容关系的,所以不要乱安装,并且直接安装都时cpu版本,还得再安装对应版本的cuda,更麻烦。

最好这样,直接一个命令搞定

查看:https://pytorch.org/get-started/previous-versions/

亲测有效:conda安装一般都是不好使的,使用pip安装

比如安装torch1.9.0

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

在运行就正常了。

推荐阅读:

我的2022届互联网校招分享

我的2021总结

浅谈算法岗和开发岗的区别

互联网校招研发薪资汇总

2022届互联网求职现状,金9银10快变成铜9铁10!!

公众号:AI蜗牛车

保持谦逊、保持自律、保持进步

f2e2b7734fb78627eb406a989abb593f.jpeg

发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著)

发送【1222】获取一份不错的leetcode刷题笔记

发送【AI四大名著】获取四本经典AI电子书


http://www.ppmy.cn/news/497353.html

相关文章

山东首版次软件申报的条件及材料

1、第一版软件申报条件及考核指标: 1.1版次为1.0的申请软件实现销售,软件符合2021目录。 1.2企业的主要业务是软件信息,销售收入占总销售收入的70%,超过500万。 或者企业有软件信息服务收入,且占企业主营业务收入的…

经典SQL语句大全一:基础

一、基础 1、说明:创建数据库 CREATE DATABASE database-name2、说明:删除数据库 drop database dbname3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice disk, testBack, c:\mssql7backup\MyNwind_1.dat --- 开始 备份 BACKUP DATABAS…

每日三问-前端(第二十七期)

先来回顾一下上期的问题及答案: 2023年6月20日 1. 什么是语义化的 HTML?为什么它重要? 语义化的 HTML 是指使用具有明确含义的标签来编写 HTML 代码的做法。它强调使用合适的标签来描述文档结构和内容的含义,而不仅仅是为了达到样…

用html5、css3和一些简单的js代码写了一个个人网站,之后如何上线?

💂 个人网站:【海拥】【游戏大全】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 目录 前言网站上线方案1 Git…

Toyota Programming Contest 2023#3(AtCoder Beginner Contest 306) 6月17日比赛 第四题

题目地址:D - Poisonous Full-Course 题目大意 时间限制:2秒,空间限制:1024MB,分值:400分 问题描述 小明来到了一家餐厅,一共有道菜,第道菜具有以下属性: 若&#xf…

联想thinkbook 关掉fn键,方便调试程序

进入bios:fn f12,出现联想logo界面时按这个组合键 在进入的bios界面设置关闭功能键,也就是取消笔记本fn键。首先,要按tab翻页,找到setup回车进入bois。其次,是开机时进入bios后找到config界面。第三,是在c…

C/C++ Linux 键盘检测

一、方法 C/C 在 Linux 中没有现成的键盘检测函数&#xff0c;可以利用 <termio.h> 中的 struct termios 结构体来构造键盘检测函数。至于 struct termios 的具体解析&#xff0c;这里不展开介绍&#xff0c;下面给出构造的键盘检测代码。 二、代码 #include <termi…

联想键盘 F1 -12 键不能用解决

http://www.zfnn.com/post/706.html Wednesday, 2011-3-16 16:24:30 联想键盘F1-F12键咋不用起来了 换了一个新键盘&#xff0c;联想的。 突然发现F1-F12键失效&#xff0c;差点重装系统。 几经折腾&#xff0c;才发现这个联想新键盘有一个Fn键&#xff0c;如果想正常使用FI至…