在 PascalVOC 数据集上运行 DeepLabV3 时 GPU 内存耗尽

问题描述

详细信息:在 Ubuntu 18.04 中,我为 TF 1.15、CUDA 10.0、cuDNN 7 创建了一个 docker 映像。我有具有 8 GB 内存的 GPU GeForce RTX 207。

我从源代码构建了 TF 图像,没问题。

我想在其中运行 DeepLabv3+。根据它的documentation,我尝试运行“sh local_test.sh”,它端到端地运行网络。但是,从以下终端日志中可以看出,GPU 很快就不堪重负了—— 2021-01-22 03:16:58.511601: I tensorflow/core/common_runtime/bfc_allocator.cc:917] 1 个大小为 193462272 的块,总计 184.50MiB 2021-01-22 03:16:58.511605: I tensorflow/core/common_runtime/bfc_allocator.cc:921] 使用中块的总和:6.98GiB 2021-01-22 03:16:58.511608: I tensorflow/core/common_runtime/bfc_allocator.cc:923] total_region_allocated_bytes_: 7525505280 memory_limit_: 7525505433_10_curr_10151101015151151511511511511511511511511515133318151151815181800000000000000000000000000000000008 2021-01-22 03:16:58.511615:我 tensorflow/core/common_runtime/bfc_allocator.cc:929] 统计: 限额:7525505433 使用中:7499195136 MaxInUse:7499195136 NumAllocs:4058 最大分配大小:3400007680

2021-01-22 03:16:58.511683: W tensorflow/core/common_runtime/bfc_allocator.cc:424] *********************** ****************************************************** **************************** 2021-01-22 03:16:58.511702: W tensorflow/core/framework/op_kernel.cc:1651] OP_REQUIRES 在 conv_ops.cc:500 失败:资源耗尽:在分配形状为 [4,256,12,12] 的张量时 OOM作业:本地主机/副本:0/任务:0/设备:GPU:0 由分配器 GPU_0_bfc 信息:张量流:错误报告给协调器:,发现 2 个根错误。 (0) 资源耗尽:分配形状为[4,129,129]的张量并在/job:localhost/replica:0/task:0/device:GPU:0上通过分配器GPU_0_bfc输入float时OOM

问题:我该如何解决这个问题?这是 DeepLabV3 代码中的错误吗?显然 8GB 不足以让这个网络在 PascalVOC 数据集上运行。是否有关于内存要求的指导?目前我只能访问这台机器(8GB GPU),所以网络可以在 cpu 上运行吗?如果是这样,如何?执行速度会慢一个数量级吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...