Tensorflow报错“Could not find ‘cudart64_6.dll”

声明:我使用的版本

  • tensorflow-gpu==1.4.0
  • CUDA (release 8.0, V8.0.60) 8.0版
  • cudnn(6.0)

但是最近在使用tensorflow时,突然报错

OSError: [WinError 126] 找不到指定的模块/Could not find ‘cudart64_6.dll’

原因:在tensorflow调用NVIDIA时缺少了cudart64_6.dllcudart64_6.dll是在cudnn6.0里的文件,这可能与我的软件自动升级有关,cudnn升级后造成和tensorflow1.4要求的版本不一致从而导致错误。


  这里说明一下如何查看tensorflow-gpu对应的CUDA版本和cudnn版本的问题:(预先安装好Anaconda的前提下)
在路径D:\Anaconda3\Lib\site-packages\tensorflow\python\platform下可以看到build_info.py文件
这里写图片描述

msvcp_dll_name = 'msvcp140.dll'
cudart_dll_name = 'cudart64_80.dll'
cuda_version_number = '8.0'  # CUDA8.0
nvcuda_dll_name = 'nvcuda.dll'
cudnn_dll_name = 'cudnn64_6.dll'
cudnn_version_number = '6'   # cudnn6.0
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这是在tensorflow1.4.0中的build_info.py文件,可以看出其对应的CUDA为8.0,cudnn为6.0。

tensorflow1.4以上的版本都可以通过这种方法查看对应的CUDA和cudnn版本。

在tensorflow1.3版本中这种方法不适用,因为没有build_info.py这个文件(亲测)


首先要会查看自己的CUDA版本,确定一下是否需要升级或者卸载重新安装

方法1:

在目录C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA下可以看到安装的CUDA版本
版本号

方法2:

打开cmd,进入命令行模式,输入命令

nvcc –version 
 
 
  • 1

这里写图片描述


cudnn的下载

  • cudnn下载传送门 只不过需要注册账户,如果不想麻烦的话可以直接评论我,我可以发过去。要注意与自己显卡的类型相对应。

cudnn不用安装,下在玩解压后如图:
这里写图片描述
只需将cudnn里的三个文件夹里的文件复制到对应的NVIDIA文件下就行
这里写图片描述

注意:是将cuda里的三个文件夹里的文件,不是将文件夹直接复制过去覆盖C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0路径下相同的文件夹。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值