【发布时间】:2018-01-31 06:19:13
【问题描述】:
我使用的是 ubuntu 16.04,张量流 1.3
权重约 1700 万的网络
实验
-
图像大小 400x1000,批量大小 4,在图构建期间:
未能在主机上分配 34359738368 字节:CUDA_ERROR_OUT_OF_MEMORY
-
图像大小 300x750,批量大小 4,在图构建期间:
未能在主机上分配 34359738368 字节:CUDA_ERROR_OUT_OF_MEMORY
-
图像大小 300x740,批量大小 1,在图构建期间:
未能在主机上分配 34359738368 字节:CUDA_ERROR_OUT_OF_MEMORY
因此,三个实验所请求的内存是相同的。我的问题是 17M 的权重真的需要这么大的内存吗?为什么所需的内存不会随着不同的图像大小和批量大小而改变?
【问题讨论】:
-
您尝试过有效的实验吗?你有多少内存可用? (注意:不熟悉 Tensorflow 或 GPU 编程,但看起来您需要查看图形内存。)
-
我有两张GPU卡,总内存加起来22GB。
-
我会尝试使用尽可能小的尺寸(在所有变量中,例如使用 1x1 图像)进行实验。另外,检查程序中隐含默认设置过高的选项。
-
顺便说一句,您的其中一张存储卡可能专用于您的计算机显示器,可能不适用于其他程序。如果他们每个人都有 11Gbs,那就有问题了。
-
[更新] 我将权重减少到 8M,但我仍然得到这个:未能在主机上分配 34359738368 字节:CUDA_ERROR_OUT_OF_MEMORY