我是靠谱客的博主 端庄小甜瓜,这篇文章主要介绍OOM when allocating tensor with shape[96,3,299,299] and type float on /job:localhost/replica:0/task:...,现在分享给大家,希望可以做个参考。

 

单个GPU启动任务时报OOM的错误:

复制代码
1
2
3
4
5
6
tensorflow.python.framework.errors_impl.ResourceExhaustedError: OOM when allocating tensor with shape[96,3,299,299] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc [[Node: InceptionV3/InceptionV3/Conv2d_1a_3x3/Conv2D-0-TransposeNHWCToNCHW-LayoutOptimizer = Transpose[T=DT_FLOAT, Tperm=DT_INT32, _device="/job:localhost/replica:0/task:0/device:GPU:0"](fifo_queue_Dequeue/_1557, PermConstNHWCToNCHW-LayoutOptimizer)]] 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: train_op/_1567 = _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_6943_train_op", tensor_type=DT_FLOAT, _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.

报错GPU内存不足,就使用2个GPU,使用2个GPU的时候,发现有一块GPU是使用率空闲的,但是内存是满的。添加如下代码:

复制代码
1
2
3
4
5
from keras import backend as K config = tf.ConfigProto() config.gpu_options.allow_growth=True sess = tf.Session(config=config) K.set_session(sess)

参考:https://github.com/keras-team/keras/issues/6031

 

最后

以上就是端庄小甜瓜最近收集整理的关于OOM when allocating tensor with shape[96,3,299,299] and type float on /job:localhost/replica:0/task:...的全部内容,更多相关OOM内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部