概述
文章目录
- 0 问题
- 1 解决
- 1.1 指定GPU
- 1.2 调参
- 1.3 使用CPU
0 问题
今天跑了一下程序,报了如下的OOM错误
ResourceExhaustedError: OOM when allocating tensor with shape[258000,768] 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.
看报错主要是没内存了,按照如下思路进行纠错
1 解决
1.1 指定GPU
默认使用第0
块GPU,该用其他GPU
$ CUDA_VISIBLE_DEVICES=1 python run_file.py
其他方法见Linux 中指定使用的GPU
注:tf日志中的使用第0块GPU 是相对可见的GPU
1.2 调参
注哟报错中的tensor大小,可以适当的调小参数,以下有几个参数可以参考:
- batch_size
- 特征大小,如果输入是图片,建议调小图片大小
1.3 使用CPU
如果GPU 显存实在不够,可以使用CPU
$ CUDA_VISIBLE_DEVICES="" python run_file.py
最后
以上就是神勇宝贝为你收集整理的tensorflow gpu 运行出现OOM错误的全部内容,希望文章能够帮你解决tensorflow gpu 运行出现OOM错误所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复