【发布时间】:2019-01-28 13:16:00
【问题描述】:
我有一个 tensorflow 模型以协议缓冲区格式保存为model.pb,即184 MB。当我使用会话加载它时,我看到该进程占用了 GPU RAM 的11 GB。这是为什么呢?
【问题讨论】:
-
一方面,默认情况下,TF 在创建会话时分配(几乎)整个 GPU 内存,而不管模型实际需要多少内存(这使内存管理更加高效)。查找“启用 GPU 内存增长”。另一方面,protobuf 文件不代表模型在 RAM 中的权重,而只代表保存的参数。例如,您仍然需要输入、输出和中间缓冲区(以及一大堆其他东西,这只是说明这一点的一个例子),所以是的,期望您的内存大小更大。这很正常。
标签: python tensorflow