TensorFlow 显存使用机制详解

作者:冬日and暖阳 时间:2022-02-07 11:46:53 

默认情况下,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 内存量,这非常实用。

来源:https://blog.csdn.net/qq_29007291/article/details/81348406

标签:TensorFlow,显存
0
投稿

猜你喜欢

  • pytorch通过训练结果的复现设置随机种子

    2021-04-19 07:58:53
  • python pandas合并Sheet,处理列乱序和出现Unnamed列的解决

    2022-08-26 06:23:41
  • python抓取搜狗微信公众号文章

    2021-10-25 17:56:08
  • python utc datetime转换为时间戳的方法

    2021-11-18 07:11:44
  • javascript闭包的秘密

    2008-09-28 20:39:00
  • Python 使用csv库处理CSV文件的方法

    2023-03-16 21:37:24
  • Python OpenCV中的numpy与图像类型转换操作

    2023-11-17 09:24:20
  • Pandas数据查询的集中实现方法

    2021-08-17 10:32:27
  • 如何在Win10系统使用Python3连接Hive

    2023-08-10 07:00:39
  • asp利用aspjpeg给图片生成PNG透明水印

    2009-03-20 14:01:00
  • oracle 多个字符替换实现

    2009-10-23 17:50:00
  • Python实例方法、类方法、静态方法的区别与作用详解

    2022-08-27 08:45:41
  • Python免费验证码识别之ddddocr识别OCR自动库实现

    2023-02-25 12:28:31
  • Python 类的继承实例详解

    2021-04-30 15:54:09
  • php通过隐藏表单控件获取到前两个页面的url

    2023-11-16 04:00:08
  • PHP基于cookie与session统计网站访问量并输出显示的方法

    2023-11-15 08:38:52
  • python中defaultdict字典功能特性介绍

    2022-06-07 23:27:45
  • python获取点击的坐标画图形的方法

    2023-04-23 09:59:28
  • 关于Javascript的内存泄漏问题

    2008-04-15 07:46:00
  • XML入门的常见问题(二)

    2008-09-05 17:20:00
  • asp之家 网络编程 m.aspxhome.com