Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 类tf.train.Coordinator和类tf.train.QueueRunner在tensorflow中做什么?_Multithreading_Tensorflow - Fatal编程技术网

Multithreading 类tf.train.Coordinator和类tf.train.QueueRunner在tensorflow中做什么?

Multithreading 类tf.train.Coordinator和类tf.train.QueueRunner在tensorflow中做什么?,multithreading,tensorflow,Multithreading,Tensorflow,我知道这两个类都处理线程。根据文档,tf.train.Coordinator协调一组线程的终止,tf.train.QueueRunner持有队列的排队操作列表,每个操作将在一个线程中运行 然而,用简单的话来说,它们的作用是什么?在培训期间,他们什么时候是必要的?QueueRunner: 当TensorFlow读取输入时,它需要为其维护多个队列。队列服务于负责执行培训步骤的所有工作人员。我们使用队列是因为我们希望为工人准备好操作的输入。如果您没有队列,您的I/O将被阻塞,性能将下降 协调人: 这是

我知道这两个类都处理线程。根据文档,tf.train.Coordinator协调一组线程的终止,tf.train.QueueRunner持有队列的排队操作列表,每个操作将在一个线程中运行

然而,用简单的话来说,它们的作用是什么?在培训期间,他们什么时候是必要的?

QueueRunner: 当TensorFlow读取输入时,它需要为其维护多个队列。队列服务于负责执行培训步骤的所有工作人员。我们使用队列是因为我们希望为工人准备好操作的输入。如果您没有队列,您的I/O将被阻塞,性能将下降

协调人: 这是tf.train.Supervisor的一部分。这是必要的,因为您需要一个控制器来维护线程集(知道主线程何时应该终止,请求停止子线程,等等)


希望这有帮助。

他们为什么这样做?所有这些功能都存在于valina Python中!