解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found

目录

  • 前提
  • 针对我的情况的解决方案
  • 总结
  • 后续

运行tensorflow的时候出现以下错误
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第1张图片
并且没有用上GPU

前提

  • 我使用virtualEnv安装了一个虚拟环境,将tensoflow安装到虚拟环境下了(这个应该没有影响)
  • 我安装的cuda是10.1版本,然后cudnn是与该版本对应的cudnn-10.1-windows10-x64-v7.6.5.32. 一定要确保这个是对应的
  • 安装cuda的时候我自定义了安装目录
    解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第2张图片
    一开始是只有上面露出来的文件,打马赛克的是cudnn解压后拖拽过来的
    我觉得拖拽到这里对我并没有起作用,事实证明确实没用。详见后续

针对我的情况的解决方案

打开系统环境变量中的path (不会的同学直接在windows左下角搜索框搜索查看高级系统设置)
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第3张图片
然后点击环境变量, 在系统环境变量中找到path,双坤他
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第4张图片
发现他自己给我配置好了路径,我们在他提示的bin下查找cudnn64_7.dll, 确实没有!
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第5张图片
他缺什么我们补什么!
打开我们解压cudnn-10.1-windows10-x64-v7.6.5.32.zip过后的文件,进入bin,复制下面这个文件到上图文件夹下
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第6张图片

如图
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第7张图片
然后我们再运行一下,成功加载了,并且也用上了gpu
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第8张图片

总结

发现这个问题是挺偶然的,在网上看别人如何解决的时候有了灵感。文献1中的方法对我没有效果,但是我发现我系统环境变量中配置好了路径,并且,下图中能加载的文件我都可以在这个路径下找到,唯独找不到cudnn64_7.dll文件,于是有了一个大胆的尝试,将这个文件复制到系统环境变量提示的路径下,然后就成功了。
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第9张图片
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第10张图片
当然,我的方法不一定适用所有的情况,也许您的情况可以在文献1中得到解决。

后续

由于系统环境变量配置的路径是我自定义的路径,那拖拽到cuda安装路径下的文件是否就无效了?
我们尝试删除一下
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第11张图片
再运行一下py文件
解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found_第12张图片
依然可以!
所以一定要看一下cuda在自己电脑上系统环境变量的配置!

文献1:解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found

你可能感兴趣的:(python,tensorflow2,python)