我知道这两个类都是处理线程的。根据文档,tf.train.Coordinator协调一组线程的终止,而tf.train.QueueRunner保存队列的入队操作列表,每个操作都在一个线程中运行。
然而,用简单的话来说,它们的作用是什么?在培训过程中,什么时候是必要的?
发布于 2016-11-03 14:20:34
QueueRunner:当TensorFlow读取输入时,它需要为它维护多个队列。队列为负责执行训练步骤的所有工作人员提供服务。我们使用队列,因为我们希望让输入准备好供工作人员进行操作。如果你没有队列,你的I/O会被阻塞,性能也会下降。
协调器:这是tf.train.Supervisor的一部分。这是必要的,因为您需要一个控制器来维护线程集(知道主线程何时应该终止,请求停止子线程等)。
希望这能有所帮助。
https://stackoverflow.com/questions/40394910
复制相似问题