[大坑]Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

博客围绕TensorFlow运行时出现的CUDNN内部错误展开。博主尝试多种方法,如修改GPU运行config、降级cuda和cudnn版本均未解决。最终发现用docker安装tensorflow - gpu可运行但不便,用anaconda在虚环境指定版本安装tensorflow - gpu是较好办法,不过只能暂时解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错tensorflow/stream_executor/cuda/cuda_dnn.cc:338] Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

错误代码

2019-05-05 09:34:42.298865: I tensorflow/stream_executor/platform/default/dso_loader.cc:42] Successfully opened dynamic library libcublas.so.10.0
2019-05-05 09:34:42.469839: I tensorflow/stream_executor/platform/default/dso_loader.cc:42] Successfully opened dynamic library libcudnn.so.7
2019-05-05 09:34:43.086143: E tensorflow/stream_executor/cuda/cuda_dnn.cc:338] Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2019-05-05 09:34:43.100978: E tensorflow/stream_executor/cuda/cuda_dnn.cc:338] Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

解决办法

首先这是一个大坑,在网上找了很多办法,基本都是改一些GPU运行时候的config,我发现跑有些程序的时候并不奏效;也有是要求降级cuda和cudnn版本,我尝试了从cuda10.1一路降到9.0,cudnn也一直换,报错依旧在,仍然不奏效。

为了解决这个问题,我尝试用docker安装tensorflow-gpu发现是可以成功运行程序的,但是不太方便,我发现anaconda在虚环境里面使用conda安装tensorflow-gpu会自动安装该环境下的cuda和cudnn,并且不会对环境外已经安装的cuda和cudnn有影响,但是默认安装的版本比较低,所以,最好的办法是指定安装的版本。只需要指定tensorflow的版本即可,cuda和cudnn的版本会对应。

在虚环境下安装

conda install tensorflow-gpu==1.12

就这一条简单的命令折腾了好几天,cuda cudnn tensorflow各种版本都尝试了,在github上很多人说等待tensorflow新版本修复,确实,这个方法只能暂时解决问题,没办法迁移到更高的版本比如tensorflow2.0,所以暂时用的话还是用1.12的吧。。

转载于:https://www.cnblogs.com/aoru45/p/10811428.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值