700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 解决安装tensorflow-gpu:ImportError: DLL load failed:找不到指定的模块。从根源解决问题

解决安装tensorflow-gpu:ImportError: DLL load failed:找不到指定的模块。从根源解决问题

时间:2021-01-06 23:58:32

相关推荐

解决安装tensorflow-gpu:ImportError: DLL load failed:找不到指定的模块。从根源解决问题

对各版本均可用

1、报错样式2、查找DLL文件3、我的环境

1、报错样式

在一段时间没有使用TensorFlow之后,当我再次打开,企图运行import TensorFlow as tf时出现了ImportError: DLL load failed:找不到指定的模块这个让我措手不及,我经历了安装VS、重装cuda、重装TensorFlow,耗费了一上午,没有解决问题,直到我意识到从根源上找一找DLL的问题,才解决了它,下面的这个方法应该试用不同的版本,让我们一起来吧。

先把报错贴出来:

......File "D:\Anaconda\envs\tensorflow\lib\imp.py", line 343, in load_dynamicreturn _load(spec)ImportError: DLL load failed: 找不到指定的模块。Failed to load teh native TensorFlow runtime.See /install/install_sources#common_installation_problemsfor some common reasons and solutions. Include the entire stack traceabove dis error message when asking for help.

2、查找DLL文件

打开cmd输入

"C:\Program Files (x86)\Microsoft Visual Studio\\Professional\VC\Tools\MSVC\14.25.28610\bin\Hostx86\x86\dumpbin.exe" /dependents D:\python3.7.4\Lib\site-packages\tensorflow\python\_pywrap_tensorflow_internal.pyd

这里我用的是Visual Studio ,这个无所谓(17、18都行),只要有它dumpbin.exe,找到这个的目录,我们可以在C:\Program Files (x86),下的VS文件夹下直接搜索dumpbin.exe,找到它的目录。

然后把我剩下是部分复制到cmd里,如上标红地方运行。

效果如图:

红框中显示的是tf需要的DLL文件,我们继续在cmd里把红框内容逐条使用where filename搜索文件是否存在。

如下图:

发现是找不到cudnn64_7.dll文件了,第一我去看了一下环境变量,没有问题

第二去cudnn的文件夹里看看少没少cudnn64_7.dll文件,或者我这里是不是cudnn版本的问题,是不是cudnn64_6.dll之类的文件。如果你发现你这里没有cudnn64_7.dll文件,那就重新下载一下对应版本的cudnn。

如果是缺少其他的DLL文件,可以去百度一下哪一个文件归属那个软件,是VS还是CUDA或cudnn,对应的重装即可。

到这里你如果解决了问题,恭喜你结束了,可是我发现我有这个文件

这让我回忆起来,以前安装cudnn的时候,是直接把cudnn解压后就放在D盘没有动了,后来用 tf 没有问题,可以正常使用,再后来装了pytorch,pytorch可以用,直到近期跑了一个tf程序,发现不能用了,tf真的巨坑,环境啥都没变,就这样了。

最后,既然你查找不到DLL文件,而这个文件存在,cuda的环境变量没问题,那就只能把cudnn目录下的bin、include、lib文件夹下的文件都复制到

CUDA Development文件夹下对应的文件夹中去,让这些DLL文件聚个会。

到这里,我解决了问题,你如果只是缺少DLL文件,那找到对应的文件归属软件重装即可,不要图省事把不同版本的DLL文件改个名字。

3、我的环境

Python3.7.4

TensorFlow 1.13.1

cuda_10.0.130_411.31_win10

cudnn-10.0-windows10-x64-v7.6.5.32

其他的版本安装上述的方法,也都可以解决问题。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。