Python TensorFlow操作的共享\u名称

Python TensorFlow操作的共享\u名称,python,tensorflow,Python,Tensorflow,许多TensorFlow操作将共享_name作为可选参数。 例如,make_initializable_iterator()、大多数(所有?)TF资源(变量、TensorArray,…)、条件累加器、可变密度哈希表、五个变量()等 在文件中,它经常这样说: shared_name:如果非空,此表将在多个会话中以给定名称共享 但这是怎么回事?我如何在多个会话中实际共享资源/张量/操作(或者确切地说是什么?) 在同一过程中会有多个会话吗?或跨多个进程/机器的多个会话(远程) 它是否共享相同的内存(只

许多TensorFlow操作将
共享_name
作为可选参数。 例如,
make_initializable_iterator
()、大多数(所有?)TF资源(变量、
TensorArray
,…)、
条件累加器
可变密度哈希表
五个变量
()等

在文件中,它经常这样说:

shared_name:如果非空,此表将在多个会话中以给定名称共享

但这是怎么回事?我如何在多个会话中实际共享资源/张量/操作(或者确切地说是什么?)

在同一过程中会有多个会话吗?或跨多个进程/机器的多个会话(远程)

它是否共享相同的内存(只有在同一进程内,或至少在同一主机内,通过使用共享内存时才可能)?或者它将如何同步状态

Graph.container
与此相关吗?从该文件:

有状态操作(如变量和队列)可以在设备上维护它们的状态,以便多个进程共享它们

跨多个流程的共享是如何工作的

与此有关吗?怎么做


远程呼叫
?(参见)

fWW,相关C++代码://和。它似乎确实是
图形所指的内容。container
指的是什么,但没有明确的文档。我认为在图形中为每种类型或资源创建了一个容器(在
REGISTER\u resource\u HANDLE\u KERNEL
中注册),它们为自己的资源类型保存容器,可以跨会话共享。没有
shared_name
的资源获得一个唯一的id,该id稍后会被替换。该机制似乎是先为变量设计的(请参见和),然后扩展到其他资源。现在有,
VarHandleOp
\u VarHandleOp
,第一个使用
VarHandleOp
内核,另一个使用
resourcehandleop