解决Keras使用GPU资源耗尽的问题


Posted in Python onJune 22, 2020

我们在使用GPU资源进行训练的时候,可能会发生资源耗尽的情况,那么在在这种情况,我们需要对GPU的资源进行合理的安排,具体使用办法如下:

框架:Tensorflow和Keras

方法

import tensorflow as tf
import keras.backend.tensorflow_backend as KTF
config = tf.ConfigProto()
config.gpu_options.allow_growth=True #不全部占满显存, 按需分配
sess = tf.Session(config=config)
KTF.set_session(sess) # 设置session

通过这种方法,就能合理的使用GPU资源了。

至少到目前位置,我自己从程序没出现资源耗尽的情况,当然,对于batchsize的设置,一定要设置在合理的范围,所谓合理,大家自己体会。

补充知识:keras使用GPU的一些坑

keras安装

conda install tensorflow-gpu

pip install keras

注意:不要使用conda安装keras,会检测依赖,默认安装上tensorflow的CPU版本。

keras运行报错,tensorflow/stream_executor/cuda/cuda_dnn.cc:329 Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

解决方法:

增加如下代码:

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

以上这篇解决Keras使用GPU资源耗尽的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现DES加密解密方法实例详解
Jun 30 Python
python 读取excel文件生成sql文件实例详解
May 12 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
Feb 21 Python
Python API 自动化实战详解(纯代码)
Jun 11 Python
python多线程分块读取文件
Aug 29 Python
python使用 request 发送表单数据操作示例
Sep 25 Python
复化梯形求积分实例——用Python进行数值计算
Nov 20 Python
关于Pytorch的MNIST数据集的预处理详解
Jan 10 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
Python Selenium实现无可视化界面过程解析
Aug 25 Python
Django返回HTML文件的实现方法
Sep 17 Python
Python 多线程处理任务实例
Nov 07 Python
Keras - GPU ID 和显存占用设定步骤
Jun 22 #Python
Python 基于jwt实现认证机制流程解析
Jun 22 #Python
python中format函数如何使用
Jun 22 #Python
Tensorflow与Keras自适应使用显存方式
Jun 22 #Python
python数据类型强制转换实例详解
Jun 22 #Python
keras 指定程序在某块卡上训练实例
Jun 22 #Python
python Socket网络编程实现C/S模式和P2P
Jun 22 #Python
You might like
php之XML转数组函数的详解
2013/06/07 PHP
ThinkPHP空模块和空操作详解
2014/06/30 PHP
destoon实现不同会员组公司名称显示不同的颜色的方法
2014/08/22 PHP
PHP将session信息存储到数据库的类实例
2015/03/04 PHP
Thinkphp模板标签if和eq的区别和比较实例分析
2015/07/01 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
php实现水印文字和缩略图的方法示例
2016/12/29 PHP
PHP实现登陆表单提交CSRF及验证码
2017/01/24 PHP
php批量修改表结构实例
2017/05/24 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
2018/06/11 PHP
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
在JavaScript中处理字符串之link()方法的使用
2015/06/08 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
Bootstrap表单制作代码
2017/03/17 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
2017/11/14 Javascript
在vue项目中安装使用Mint-UI的方法
2017/12/27 Javascript
p5.js入门教程之平滑过渡(Easing)
2018/03/16 Javascript
React如何避免重渲染
2018/04/10 Javascript
JS中使用cavas截图网页并解决跨域及模糊问题
2018/11/13 Javascript
详解小程序横屏方案对比
2020/06/28 Javascript
Vue切换div显示隐藏,多选,单选代码解析
2020/07/14 Javascript
[01:09]DOTAPLUS——DOTA2的新时代
2018/04/04 DOTA
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
python学习教程之Numpy和Pandas的使用
2017/09/11 Python
Python单元测试实例详解
2018/05/25 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
Django-Scrapy生成后端json接口的方法示例
2020/10/06 Python
世界上最大的售后摩托车零配件超市:J&P Cycles
2017/12/08 全球购物
电子商务个人自荐信
2013/12/12 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
人力资源经理的岗位职责范本
2014/02/28 职场文书
超越自我演讲稿
2014/05/21 职场文书
大学生村官考核材料
2014/05/23 职场文书
领导班子整改方案
2014/10/25 职场文书
新郎父母婚礼答谢词
2015/09/29 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python