tensorflow出现Failed to get convolution algorithm, cuDNN failed to initialize
网上大多的教程是说tensorflow的版本过高,或者说cuda和cudnn的版本不对,需要降级,但这样会很麻烦!!!
以下值得推荐!!!
解决方法一:在代码前加上下面的代码
解决方法二:添加下面两行
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '/gpu:0'
或者
添加
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)
解决方法三:TensorFlow GPU版出现ResourceExhaustedError:OOM错误的问题
一是、将图片尺寸改小,小到占用的内存比显存。
二是、不使用GPU进行预测,只使用CPU预测,因为一般CPU内存要大于显存的。但装的又是GPU版的TensorFlow,所以需要在预测程序进行更改。
程序在前两行加入下面代码:
import
os
os.environ[
"CUDA_VISIBLE_DEVICES"
]
=
""
引号里填的是GPU的序号,不填的时候代表不使用GPU。
最新文章
- 关于 bind 你可能需要了解的知识点以及使用场景
- 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定
- css 选择器优先级
- 使用QQ账号的来发送邮件
- 第五篇、HTML标签类型
- 在Linux-0.11中实现基于内核栈切换的进程切换
- VM快照-克隆重要应用讲解及克隆后网卡问题解决
- MySQL巧建sum索引帮我们提高至少100%的效率
- AsyncHttpClient使用
- 006_nginx动态upstream和安全检查模块
- Android 屏蔽Power键 Home键
- 2、pandas的value_counts()和describe()
- sgu 191 Exhibition
- java使用线程设置定时任务
- spring boot中使用JdbcTemplate
- web10 动态action的应用
- Shell基础学习(七) 输入输出重定向
- 图片左右滚动控件(带倒影)——重写Gallery
- 20145201《Java程序设计》课程总结
- 一些Andoid studio常用的快捷键