【发布时间】:2019-08-12 09:22:51
【问题描述】:
我在使用两个会话的 Windows 上构建了 tensorflow。我想从我的 gpu 设置会话使用的内存量,但它似乎不起作用。我的代码看起来有点像这样:
void createSession(Session** sess, bool allow_growth, double memory_fraction)
{
tensorflow::SessionOptions session_options;
session_options.config.mutable_gpu_options()->set_allow_growth(allow_growth);
session_options.config.mutable_gpu_options()->set_per_process_gpu_memory_fraction(memory_fraction);
Status status = NewSession(session_options, sess);
...
GraphDef graph_def;
...
status = (*sess)->Create(graph_def);
...
}
这个函数在初始化时被调用两次,每次我需要的会话一次。无论我如何更改 allow_growth 和 memory_fraction 的值,这两个会话总是使用我的 gpu 内存的 80%。
我目前的tensorflow版本是1.13,但是1.12版本也存在同样的问题。
为什么这不能正常工作?
【问题讨论】:
标签: c++ tensorflow gpu