运行keras语义分割模型:cudnn初始化错误

在ubuntu18.04环境下,使用tensorflow1.13、cuda10.0和cudnn7.4.2运行基于keras的语义分割模型时遇到CUDNN_STATUS_INTERNAL_ERROR错误。尝试了更新环境和修改tensorflow_backend.py文件后成功解决问题。

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

环境如下:
ubuntu18.04
tensorflow1.13
cuda10.0
cudnn7.4.2
RTX2060
近日在跑一个语义分割的模型,用的keras框架,但是在初始运行时报了两个错误:

  1. Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR。
  2. Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
    记录显示是cudnn初始化出错,好多网上的文章说是cuda,cudnn,keras等版本不匹配,但是我并没有重新装环境,因为一些朋友重新装完环境之后还是会出错,说明不是环境的问题,接着我试着修改了tensorflow_backend.py里面的几行代码,
    vim /home/xxx/.local/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py
    如下:
if _SESSION is None:
    if not os.environ.get('OMP_NUM_THREADS'):
        config = tf.ConfigProto(allow_soft_placement=True)
        ##################
        #添加代码
        config.gpu_options.allow_growth=True
        config.gpu_options.per_process_gpu_memory_fraction=0.9
        ##################
    else:
        num_thread = int(os.environ.get('OMP_NUM_THREADS')
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值