TensorFlow 显存使用机制详解


Posted in Python onFebruary 03, 2020

默认情况下,TensorFlow 会映射进程可见的所有 GPU 的几乎所有 GPU 内存(取决于 CUDA_VISIBLE_DEVICES)。通过减少内存碎片,可以更有效地使用设备上相对宝贵的 GPU 内存资源。

在某些情况下,最理想的是进程只分配可用内存的一个子集,或者仅根据进程需要增加内存使用量。 TensorFlow 在 Session 上提供两个 Config 选项来进行控制。

(1) : 自主申请所用的内存空间

第一个是 allow_growth 选项,它试图根据运行时的需要来分配 GPU 内存:它刚开始分配很少的内存,随着 Session 开始运行并需要更多 GPU 内存,我们会扩展 TensorFlow 进程所需的 GPU 内存区域。请注意,我们不会释放内存,因为这可能导致出现更严重的内存碎片情况。要开启此选项,请通过以下方式在 ConfigProto 中设置选项:

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

(2) 规定 可用最大内存占单个GPU的总内存比例

第二个是 per_process_gpu_memory_fraction 选项,它可以决定每个可见 GPU 应分配到的内存占总内存量的比例。例如,您可以通过以下方式指定 TensorFlow 仅分配每个 GPU 总内存的 40%:

config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.4
session = tf.Session(config=config, ...)

如要真正限制 TensorFlow 进程可使用的 GPU 内存量,这非常实用。

以上这篇TensorFlow 显存使用机制详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python求两个list的差集、交集与并集的方法
Nov 01 Python
简单介绍Python中的RSS处理
Apr 13 Python
Python正规则表达式学习指南
Aug 02 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 Python
Python简单生成8位随机密码的方法
May 24 Python
快速解决安装python没有scripts文件夹的问题
Apr 03 Python
用Python3创建httpServer的简单方法
Jun 04 Python
浅析python中numpy包中的argsort函数的使用
Aug 30 Python
python selenium 查找隐藏元素 自动播放视频功能
Jul 24 Python
python的pstuil模块使用方法总结
Jul 26 Python
如何使用python记录室友的抖音在线时间
Jun 29 Python
python接口自动化框架实战
Dec 23 Python
opencv python如何实现图像二值化
Feb 03 #Python
python实现人机猜拳小游戏
Feb 03 #Python
如何使用selenium和requests组合实现登录页面
Feb 03 #Python
检测tensorflow是否使用gpu进行计算的方式
Feb 03 #Python
Tensorflow 实现释放内存
Feb 03 #Python
手把手教你进行Python虚拟环境配置教程
Feb 03 #Python
解决TensorFlow GPU版出现OOM错误的问题
Feb 03 #Python
You might like
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
2013/04/26 PHP
PHP也能干大事 随机函数
2015/04/14 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
PHP7数组的底层实现示例
2019/08/25 PHP
javascript 语法基础 想学习js的朋友可以看看
2009/12/16 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
NodeJS Express框架中处理404页面一个方式
2014/05/28 NodeJs
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
jquery调取json数据实现省市级联的方法
2015/01/29 Javascript
jQuery使用hide方法隐藏元素自身用法实例
2015/03/30 Javascript
在WordPress中加入Google搜索功能的简单步骤讲解
2016/01/04 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
AngularJs $parse、$eval和$observe、$watch详解
2016/09/21 Javascript
JavaScrpt的面向对象全面解析
2017/05/09 Javascript
JS模拟超市简易收银台小程序代码解析
2017/08/18 Javascript
原生JS获取元素的位置与尺寸实现方法
2017/10/18 Javascript
JavaScript实现简单轮播图效果
2018/12/01 Javascript
原生js实现针对Dom节点的CRUD操作示例
2019/08/26 Javascript
js实现星星打分效果
2020/07/05 Javascript
微信小程序自定义底部弹出框功能
2020/11/18 Javascript
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
Python实现决策树C4.5算法的示例
2018/05/30 Python
Python类和对象的定义与实际应用案例分析
2018/12/27 Python
NumPy 数组使用大全
2019/04/25 Python
Python检查 云备份进程是否正常运行代码实例
2019/08/22 Python
利用Python实现某OA系统的自动定位功能
2020/05/27 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
波兰最大的度假胜地和城市公寓租赁运营商:Sun & Snow
2018/10/18 全球购物
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
总经理秘书工作职责
2013/12/26 职场文书
保险公司早会主持词
2014/03/22 职场文书
房地产开发项目建议书
2014/05/16 职场文书
合作协议书模板
2014/10/10 职场文书
班级联欢会主持词
2015/07/03 职场文书