问题
- RuntimeError:CUDA error: no kernel image is available for execution on the device
- ImportError: libcudart.so.10.1: cannot open shared object file: No such file or directory
- conda下载的pytorch版本默认是cpu版本的
检查分析发现,cuda可用,原因是torch和cuda版本不匹配
根据官网要求,找到匹配的版本并重新安装匹配的软件
安装成功后,运行代码出现新的问题如下,
检索发现我的本机没有cuda10.1的版本,我的cuda是11.4的版本
卸载之前的软件,重新安装最新的版本
检测新的环境发现此时不再支持cuda
根据网上所说,检查是否有cpuonly包,删除即可,但是我没有,网上说先下载后卸载就可以,可我这直接就无法安装,conda和pip都安装不了。我的conda默认还是安装的cpu版本的torch。
转向pip安装torch。用pip指定版本可以安装并且是支持gpu的版本,但是还是报之前不兼容的错误,不指定版本的话竟然安装的是1.0.2的版本,没有最新的软件包。服了。
然后查看conda的软件版本
发现我要的torch1.8.0还没有对应版本,1.8.1的版本只有cpu的对应版本
因此重新更新conda的软件源,用清华的就行,然后更新索引。conda clean -i
具体换源直接在网上找,博客挺多的。更新后重新conda search pytorch就可以看到新的软件版本了。
也可以看看cudatoolkit的版本
我是python=3.8,cuda=11.4,所以我直接选择cuda=11.3的即可。要下载torchision等最好在官网找对应匹配的版本。
安装成功!撒花!
参考安装GPU版本的pytorch(解决pytorch安装时默认安装CPU版本的问题)保姆级教程_3EoIPrime的博客-CSDN博客
https://blog.csdn.net/weixin_43868021/article/details/122083729