解决TensorFlow GPU版出现OOM错误的问题

 更新时间:2020年02月03日 10:07:18   作者:lzher0  
今天小编就为大家分享一篇解决TensorFlow GPU版出现OOM错误的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

问题:

在使用mask_rcnn预测自己的数据集时,会出现下面错误:

ResourceExhaustedError: OOM when allocating tensor with shape[1,512,1120,1120] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc
 [[{{node rpn_model/rpn_conv_shared/convolution}} = Conv2D[T=DT_FLOAT, data_format="NCHW", dilations=[1, 1, 1, 1], padding="SAME", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/device:GPU:0"](fpn_p2/BiasAdd, rpn_conv_shared/kernel/read)]]
Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.
 
 [[{{node roi_align_mask/strided_slice_17/_4277}} = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_3068_roi_align_mask/strided_slice_17", tensor_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]
Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.

原因:

一是、因为图片尺寸为3200*4480,图片的尺寸太大。

二是、我使用的是TensorFlow GPU版,而我GPU的显存只有8G,导致显存不够。

解决:

一是、将图片尺寸改小,小到占用的内存比显存。

二是、不使用GPU进行预测,只使用CPU预测,因为一般CPU内存要大于显存的。但装的又是GPU版的TensorFlow,所以需要在预测程序进行更改。

程序在前两行加入下面代码:

import os
os.environ["CUDA_VISIBLE_DEVICES"] = ""

引号里填的是GPU的序号,不填的时候代表不使用GPU。

以上这篇解决TensorFlow GPU版出现OOM错误的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Pandas数据处理库画图与文件读取使用示例

    Pandas数据处理库画图与文件读取使用示例

    这篇文章主要为大家介绍了Pandas数据处理库画图与文件读取使用示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Python3实现发送邮件和发送短信验证码功能

    Python3实现发送邮件和发送短信验证码功能

    这篇文章主要介绍了Python3实现发送邮件和发送短信验证码功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • 跟老齐学Python之Python安装

    跟老齐学Python之Python安装

    本文主要讲诉了在Linux,Windows,MacOS三大系统中如何安装Python环境,非常的实用,虽然前面絮絮叨叨的说了不少题外话,但都是作者的肺腑之言,还是仔细看看吧
    2014-09-09
  • Django 解决开发自定义抛出异常的问题

    Django 解决开发自定义抛出异常的问题

    这篇文章主要介绍了Django 解决开发自定义抛出异常的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • 用Python的urllib库提交WEB表单

    用Python的urllib库提交WEB表单

    上次实现的校园网IP网关登录器其中一个关键部分就是提交登录网页的表单,下面是我的Python实现代码
    2009-02-02
  • python中的urlparse()方法使用

    python中的urlparse()方法使用

    这篇文章主要介绍了python中的urlparse()方法使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • Python对接 xray 和微信实现自动告警

    Python对接 xray 和微信实现自动告警

    xray 是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动、被动多种扫描方式,自备盲打平台、可以灵活定义 POC,功能丰富,这篇文章主要介绍了对接 xray 和微信实现自动告警,需要的朋友可以参考下
    2019-09-09
  • pyecharts绘制各种数据可视化图表案例附效果+代码

    pyecharts绘制各种数据可视化图表案例附效果+代码

    这篇文章主要介绍了pyecharts绘制各种数据可视化图表案例并附效果和代码,文章围绕主题展开详细的内容介绍,感兴趣的小伙伴可以参考一下
    2022-06-06
  • python按照list中字典的某key去重的示例代码

    python按照list中字典的某key去重的示例代码

    这篇文章主要介绍了python按照list中字典的某key去重的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 解决os.path.isdir() 判断文件夹却返回false的问题

    解决os.path.isdir() 判断文件夹却返回false的问题

    今天小编就为大家分享一篇解决os.path.isdir() 判断文件夹却返回false的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11

最新评论