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 当Tensorflow上的操作间并行性增加时,会发生什么情况?_Multithreading_Tensorflow_Parallel Processing - Fatal编程技术网

Multithreading 当Tensorflow上的操作间并行性增加时,会发生什么情况?

Multithreading 当Tensorflow上的操作间并行性增加时,会发生什么情况?,multithreading,tensorflow,parallel-processing,Multithreading,Tensorflow,Parallel Processing,我已经阅读了Tensorflow关于互操作和内部并行性的文档。然而,我还没有完全理解互操作并行性如何影响引擎盖下的Tensorflow 我的问题是:InterOp线程池中的线程实际上是并行地训练模型的(即,通过在线程之间分割训练迭代,每个线程在训练批的不同子集上训练),或者它们只是并行化执行图的非冲突分支?操作间并行性限制了执行器可以并行启动多少个操作。操作内并行性约束Eigen用于执行单个内核的CPU线程数。将数据拆分为批处理是一种更高级别的功能,由客户机(即像tf.Estimator这样的P

我已经阅读了Tensorflow关于互操作和内部并行性的文档。然而,我还没有完全理解互操作并行性如何影响引擎盖下的Tensorflow


我的问题是:InterOp线程池中的线程实际上是并行地训练模型的(即,通过在线程之间分割训练迭代,每个线程在训练批的不同子集上训练),或者它们只是并行化执行图的非冲突分支?

操作间并行性限制了执行器可以并行启动多少个操作。操作内并行性约束Eigen用于执行单个内核的CPU线程数。将数据拆分为批处理是一种更高级别的功能,由客户机(即像tf.Estimator这样的Python库)处理。运行时无法区分数据和参数——它们都只是流经计算图的张量。

谢谢您的回答。执行引擎如何决定是否可以并行启动两个操作?例如,调用训练函数(并传递下一批训练数据)的For循环是否可以与操作间并行化?操作间并行化仅控制单个
会话的并行化。运行
调用。在一个进程中,您可以并行发出多个session.run调用,可能来自不同的会话。