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

937 阅读2分钟

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

我出现这个问题的主要的原因是:我在更新nvidia的驱动到431的时候,我需要将cuda版本配合的调到10.1版本,然后我下了一个cudnn 8.0,将.h, .lib, .dll复制到指定的cuda文件夹下,然后在我去运行import tensorflow as tf的时候出现错误Could not load dynamic library ‘cudnn64_7.dll’; dlerror: cudnn64_7.dll not found,是因为我们需要cudnn的版本和cuda配合上,这样我们需要将我们的cudnn的版本换成7.6.x的就行了,在将指定的文件进行拷贝到相对应的文件夹下即可

如果你使用的是tensorflow或其他深度学习框架,发现报错没发现cudnn64_7.dll,文件可以去英伟达那里下载相应的文件包。地址: developer.nvidia.com/rdp/cudnn-d…. 不过要注册账号,还要验证。 全部版本下载地址:developer.nvidia.com/rdp/cudnn-a…

1.注意事项 cudnn-10.1-windows10-x64-v7.6.5.32.zip

也就是说是在

  • CUDA runtime:10.1
  • window10
  • cudnn=7.6.5.32

下压缩包,请注意自己的版本号,版本号不同可能会出错。

2.解决办法 现在就教你们解决办法,首先把包下载下来先,然后解压。解压后文件夹cuda里面会有这三个文件夹,里面的文件对应电脑中相应的CUDA的文件夹中的文件。

image.png

然后到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA目录下

image.png

可以发现本机的cuda版本文件夹,我这里的是v10.1所以我下载的也是v10.1版本的cudnn,然后进入到文件夹中

image.png

因为我们这里缺失的是cudnn64_7.dll文件,打开刚刚解压的文件夹cuda,把目录bin中的cudnn64_7.dll拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin文件夹下即可。(请对应自己我文件路径)

3.验证 现在就剩下验证文件是否成功加载了,进入pycharm,运行以下代码。

import tensorflow as tf
print(tf.__version__)
print(tf.test.is_gpu_available())

如果你成功打印出True,或者在红色字体的执行报告中发现,那个我就要恭喜你成功解决问题啦!!!

image.png