故事梗概
本人最近学习TensorFlow,在尝试使用GPU时,报错:
Loaded runtime CuDNN library: 7.5.0 but source was compiled with: 7.6.5
但奇怪的是,我明明安装了CUDA v10.1,并且根据网上的教程,将从官网下载的CuDNN 7.6.5的压缩包中的内容解压到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1中。同时也将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin、C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include、C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64等路径添加到环境变量中。但怎么仍然报这样的错误呢?
最后发现了在我的C:\Windows\System32文件夹下,也有cudnn64_7.dll等动态链接库文件。心想反正也已经将CUDA的路径添加到Path变量中,索性也就将系统文件夹下的这些相关DLL文件全部删除,之后运行程序果然就没有再报错。此时就有些疑惑,CUDA的路径我明明也添加在了Path环境变量中,并且提到了最前面,但貌似Windows系统仍然会优先在系统文件夹下寻找依赖?希望哪位大佬帮忙解释一下呢。。。
博主在使用TensorFlow尝试调用GPU时遇到版本不匹配的错误,通过排查发现系统文件夹中存在旧版本的CuDNN动态链接库,删除后问题解决。文章探讨了Windows系统加载动态链接库的优先级问题。
3343

被折叠的 条评论
为什么被折叠?



