2017-05-25 48 views
0

我刚刚读过documentation,它说主管需要明确检查主循环中的停止条件,但这并不能解释为什么它必须这样做。它背后的原因是什么?TensorFlow:在Supervisor Managed Session中检查站点的目的是什么?

到目前为止,我的大部分代码都没有包含这个条件,而且事情仍然正常。有什么我应该担心的吗?

此外,如果条件是像一个标准的代码:

if sv.should_stop(): 
    sv.request_stop() 

已被列入每次会话运行时,为什么不能使它默认包含在一个管理会议?有意思的是,在for/while循环中明确写入这些代码是否有特殊用处?

回答

1

这是为了防止您的某个队列变空或其他错误并要求您停止。如果你的队列永远不会是空的,并且没有任何错误,那么你不需要检查。

+0

这就是说,如果我通过在队列中有足够的缓冲量来阻止我的队列变空,我不需要检查停止吗?让主管停下来并产生强制停止的错误会有什么区别? – kwotsin

+0

如果你正在进行分布式培训,你可能需要停止,因为远程故障,但否则我认为你是对的,并没有什么区别。 –

+0

这是一个很好的观点!不幸的是,我没有机会进行分布式培训,所以当我有机会这样做时,我会牢记这一点。谢谢! :d – kwotsin

相关问题