CUDA Error: no kernel image is available for execution on device

14 篇文章 1 订阅

场景再现:搭建了一台基于NVIDIA GeForce 1080Ti的算法服务器,使用的cuda11.1的docker镜像,显卡驱动:NVIDIA-Linux-x86_64-455.38.run,容器起来后,运行程序时出现题目中的错误:

第一反应是,是不是cuda和驱动该版本太高了?因为这套环境原本是在GeForce RTX 3080机器上运行的。所以在第一时间把显卡驱动降到了NVIDIA-Linux-x86_64-440.44.run,cuda版本降到了10.2,并且重新编译了应用程序,但是这个问题仍然存在。

网上查解决方法,有人说要将cuda版本到8,这个显然代价大了些,因为要重新配置docker镜像,耗时太长。

然后看到有人说是算力问题,网上查到了算力表,1080的算力是6.1,比3080低,所以需要看一下程序依赖的深度学习库是否配置问题。

本程序依赖的是darknet,找到darknet源码的Makefile,如下:

需要修改ARCH配置与本机显卡型号匹配,于是,试着注掉75的一行,重新编译darknet,果然解决了问题。

附显卡算力表:

GeForce 和 TITAN 产品

GPU计算能力
GeForce RTX 30908.6
GeForce RTX 30808.6
GeForce RTX 30708.6
NVIDIA TITAN RTX7.5
GeForce RTX 2080 Ti7.5
GeForce RTX 20807.5
GeForce RTX 20707.5
GeForce RTX 20607.5
NVIDIA TITAN V7.0
NVIDIA TITAN Xp6.1
NVIDIA TITAN X6.1
GeForce GTX 1080 Ti6.1
GeForce GTX 10806.1
GeForce GTX 10706.1
GeForce GTX 10606.1
GeForce GTX 10506.1
GeForce GTX TITAN X5.2
GeForce GTX TITAN Z3.5
GeForce GTX TITAN Black3.5
GeForce GTX TITAN3.5
GeForce GTX 980 Ti5.2
GeForce GTX 9805.2
GeForce GTX 9705.2
GeForce GTX 9605.2
GeForce GTX 9505.2
GeForce GTX 780 Ti3.5
GeForce GTX 7803.5
GeForce GTX 7703.0
GeForce GTX 7603.0
GeForce GTX 750 Ti5.0
GeForce GTX 7505.0
GeForce GTX 6903.0
GeForce GTX 6803.0
GeForce GTX 6703.0
GeForce GTX 660 Ti3.0
GeForce GTX 6603.0
GeForce GTX 650 Ti BOOST3.0
GeForce GTX 650 Ti3.0
GeForce GTX 6503.0
GeForce GTX 560 Ti2.1
GeForce GTX 550 Ti2.1
GeForce GTX 4602.1
GeForce GTS 4502.1
GeForce GTS 450*2.1
GeForce GTX 5902.0
GeForce GTX 5802.0
GeForce GTX 5702.0
GeForce GTX 4802.0
GeForce GTX 4702.0
GeForce GTX 4652.0
GeForce GT 7403.0
GeForce GT 7303.5
GeForce GT 730 DDR3,128 位2.1
GeForce GT 7203.5
GeForce GT 705*3.5
GeForce GT 640 (GDDR5)3.5
GeForce GT 640 (GDDR3)2.1
GeForce GT 6302.1
GeForce GT 6202.1
GeForce GT 6102.1
GeForce GT 5202.1
GeForce GT 4402.1
GeForce GT 440*2.1
GeForce GT 4302.1
GeForce GT 430*2.1
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值