本文介绍: RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pipreq-build-jh50bw28/aten/src/THC/THCBlas.cu:259或450网上查找N次都没找到能解决这个问题的方案,怒肝5天后终于找到了终极解决方案,供大家参考。

RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pipreq-build-jh50bw28/aten/src/THC/THCBlas.cu:259

搜索引擎查找N次,包括询问N次GPT导师都没找到能解决这个问题的方案,都在说cudapytorch的对应,但是我花大量的时间cudapytorch对应好了之后,仍然出现了这个问题。怒肝5天后终于找到了终极解决方案,供大家参考。

跑某个对比实验需要用到pytorch1.1.0以及cuda10.0,通过docker pull到本地显卡RTX3090一个cuda10.0的环境然后使用torch.version.cuda()显示cuda10.0.130检验torch安装默认cuda版本,确保torch.version.cuda()与nvcc -V显示的版本匹配。重新配置cudaanacondapythonpytorch后,运行代码发现报错

RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pip-req-build-jh50bw28/aten/src/THC/THCBlas.cu:259

或者是报错

RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pip-req-build-jh50bw28/aten/src/THC/THCBlas.cu:450

发现torch.cuda.is_available()等等尝试均正常。即init初始化函数不会报错,但是运行到torch.bmm、torch.conv2d等实际操作报错

通过多次尝试发现使用torch.conv2d()报错,但是torch.nn.conv2d()不报错说明与之相联系的cuda有问题,cudnn没有问题可以正常工作

一台机器(同为RTX3090)发现仍然出现这个问题

通过多次实验,进一步验证了自己的想法。

结论:版本的RTX3090不能支持版本的cuda10.0
这是我的Driver Version:512.36
在这里插入图片描述
查阅下表可知,
在这里插入图片描述在这里插入图片描述
理论上Driver Version(高版本显卡)只要大于410.48即可以兼容低版本的cuda10.0.130,但是实际上,高版本的显卡只可与相近的cuda兼容比如本文使用电脑RTX3090与cuda11.3、cuda11.6、cuda 12.0等可以有效兼容,但是cuda10.0,想都别想。

真的是巨坑啊!!!五天时间做啥不行!全花在论证它跑不出来的路上了。。。。

原文地址:https://blog.csdn.net/weixin_43663809/article/details/133788376

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_10033.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注