【发布时间】:2018-11-04 02:22:50
【问题描述】:
环境:
- Tensorflow 1.8-gpu(官方 docker 容器)
- nVidia 1080ti GPU
- 64G 内存
- 输入图片大小只有300x300,测试用的只有60张
在训练期间,观察不断增加的内存使用量(来自“top”命令)
- step-10 使用 39G
- step-200 使用 50G
- step-2000 使用 59G
- ...
- OOM
使用“ssd_mobilenet_v2”管道并减少批量大小、队列大小和输入读取器。
不知道为什么内存使用量不断累积,然后就变成OOM了。系统是否存储了权重以外的内容或某处存在内存泄漏?内存使用量应该在几个步骤后保持不变?
model {
ssd {
num_classes: 2
image_resizer {
fixed_shape_resizer {
height: 300
width: 300
}
}
}
}
train_config {
batch_size: 10
num_steps: 200000
fine_tune_checkpoint_type: "detection"
batch_queue_capacity: 10
num_batch_queue_threads: 10
prefetch_queue_capacity: 10
}
train_input_reader {
queue_capacity: 10
min_after_dequeue: 10
}
eval_config {
num_examples: 1
max_evals: 10
use_moving_averages: false
}
eval_input_reader {
queue_capacity: 10
min_after_dequeue: 10
}
【问题讨论】:
-
嗨,你解决过这个问题吗?与 mobilenet_v1_ssd 有同样的问题 - 大约 7k 步后使用 50gb RAM
-
还没有...将在本周晚些时候重新讨论这个问题。会在这里持续更新
-
同样的问题,内存使用量不断增加。你在他们的 github repo 上打开过 issue 吗?
-
@Jon 不,我认为我们应该这样做。但是,我正在从事其他一些项目。你能帮忙吗?
标签: tensorflow object-detection-api