`intra_op_parallelism_threads`和`inter_op_parallelism_threads`选项如何在TensorFlow中工作?

Min*_*ark 7 configuration multithreading gpu tensorflow

我的理解是TensorFlow在每个设备上创建两个线程池:一个用于帧内并行操作,一个用于操作间并行.

假设有3个独立的操作A,B,C放在/gpu:0intra_op_parallelism_threads=5.假设A和B具有单线程GPU内核实现,并且C具有多线程内核实现,这意味着它们都可以在同一设备上并行运行,A和B仅使用1个GPU线程而C耗尽到3个GPU线程?

现在假设inter_op_parallelism_threads=2,这是否意味着只能同时评估3个操作中的2个/gpu:0,所以在上面的例子中,它可能是A + B,B + C或A + C,具体取决于谁首先到达那里?

注意:我试图理解@mrry对这个问题的回答:Tensorflow:执行具有CPU特定核心的操作