zoukankan      html  css  js  c++  java
  • “Failed to get convolution algorithm. This is probably because cuDNN failed to initialize”错误的解决办法

    换了一台RTX2060的电脑之后,用tensorflow做实验发现没有使用GPU,那我换电脑就没有意义了。然后百度发现tensorflow-gpu才是使用GPU来运算的。于是又花了三个多小时来下载安装,为啥比CPU的复杂这么多,唉~。终于安装成功之后,运行程序的时候又报错,也就是本文这个错误,查阅资料后发现解决方法,于是记录一下。

    这是GPU内存的问题
    tensorflow

    config = tf.ConfigProto()
    config.gpu_options.allow_growth = True
    session = tf.Session(config=config)
    

    keras

    config = tf.ConfigProto()
    config.gpu_options.allow_growth = True
    keras.backend.tensorflow_backend.set_session(tf.Session(config=config))
    

    或者

    config = tf.compat.v1.ConfigProto(allow_soft_placement=True)
    config.gpu_options.per_process_gpu_memory_fraction = 0.3
    tf.compat.v1.keras.backend.set_session(tf.compat.v1.Session(config=config))
    

    详细解析

    import os
    os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
    os.environ['CUDA_VISIBLE_DEVICES'] = "0,1"//选择哪一块gpu,如果是-1,就是调用cpu
    
    config = tf.ConfigProto()//对session进行参数配置
    config.allow_soft_placement=True : 如果你指定的设备不存在,允许TF自动分配设备
    config.gpu_options.per_process_gpu_memory_fraction=0.7//分配百分之七十的显存给程序使用,避免内存溢出,可以自己调整
    config.gpu_options.allow_growth = True//按需分配显存,这个比较重要
    session = tf.Session(config=config)
    ##或者
    with tf.Session(config=config) as sess:
    

    南岛鹋博客

  • 相关阅读:
    google的开源项目总结
    Google Breakpad 完全解析(二) —— Windows前台实现篇
    Google Breakpad 完全解析(一) —— Windows入门篇
    PVS-Studio静态通用分析规则
    C,C++开源项目中的100个Bugs
    一日一点RakNet(3)--介绍
    C++开源跨平台类库集
    如何实现数组的随机排序?
    JavaScript原型,原型链 ? 有什么特点?
    js的基本数据类型
  • 原文地址:https://www.cnblogs.com/ndmiao/p/13063008.html
Copyright © 2011-2022 走看看