Tensorflow与Keras自适应使用显存
2017-12-26 18:07
701 查看
Tensorflow支持基于cuda内核与cudnn的GPU加速,Keras出现较晚,为Tensorflow的高层框架,由于Keras使用的方便性与很好的延展性,之后更是作为Tensorflow的官方指定第三方支持开源框架。但两者在使用GPU时都有一个特点,就是默认为全占满模式。在训练的情况下,特别是分步训练时会导致显存溢出,导致程序崩溃。可以使用自适应配置来调整显存的使用情况。
代码中加入
或者在运行代码前,在终端
2、为显存分配使用比例
在建立tf.Session加入设置数据(显存使用比例为1/3),但有时你虽然设置了使用上限,在程序需要更高显存时还是会越过该限制
3、自适应分配
会自适应分配显存,不会将显存全部分配导致资源浪费
1、指定显卡
代码中加入
或者在运行代码前,在终端
2、为显存分配使用比例
3、自适应分配
4、如有设置fit_generator
将多线程关闭
参考:http://blog.csdn.net/A632189007/article/details/77978058
http://blog.csdn.net/weixin_38208741/article/details/71194280
一、Tensorflow
1、指定显卡代码中加入
import os os.environ["CUDA_VISIBLE_DEVICES"] = "0"
或者在运行代码前,在终端
export CUDA_VISIBLE_DEVICES=0
2、为显存分配使用比例
在建立tf.Session加入设置数据(显存使用比例为1/3),但有时你虽然设置了使用上限,在程序需要更高显存时还是会越过该限制
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
3、自适应分配
会自适应分配显存,不会将显存全部分配导致资源浪费
config = tf.ConfigProto() config.gpu_options.allow_growth=True sess = tf.Session(config=config)
二、Keras
与tensorflow大差不差,就是将tf.Session配置转置Keras配置1、指定显卡
代码中加入
import os os.environ["CUDA_VISIBLE_DEVICES"] = "0"
或者在运行代码前,在终端
export CUDA_VISIBLE_DEVICES=0
2、为显存分配使用比例
import tensorflow as tf import keras.backend.tensorflow_backend as KTF config = tf.ConfigProto() config.gpu_options.per_process_gpu_memory_fraction = 0.333 session = tf.Session(config=config) KTF.set_session(session)
3、自适应分配
import keras.backend.tensorflow_backend as KTF config = tf.ConfigProto() config.gpu_options.allow_growth=True session = tf.Session(config=config) KTF.set_session(session)
4、如有设置fit_generator
将多线程关闭
#可将 use_multiprocessing=True #改为 use_multiprocessing=False
参考:http://blog.csdn.net/A632189007/article/details/77978058
http://blog.csdn.net/weixin_38208741/article/details/71194280
相关文章推荐
- 多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
- Keras使用tensorflow代码
- Windows下Pycharm使用Tensorflow、Theano和Keras的方法
- 如何使用深度学习自动识别限速标志?这里有一份Keras和TensorFlow教程
- Tensorflow学习笔记--使用keras完成文本情感分类问题
- keras 与tensorflow 混合使用
- Windows 7(10) 下安装 tensorflow,theano,keras并使用GPU加速。
- 多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
- tensorflow使用GPU训练时的显存占用问题
- Keras限制GPU显存使用
- keras 与tensorflow 混合使用
- tensorflow设置显存自适应和显存比例.
- Tensorflow设置显存自适应,显存比例
- 多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
- Windows下Pycharm使用Tensorflow、Theano和Keras的方法
- TensorFlow使用GPU训练网络时多块显卡的显存使用问题
- 多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
- 使用Keras和Tensorflow设置和安装Mask RCNN
- 多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
- TensorFlow框架--Keras使用