从TensorFlow的一些官方示例中,要使用分布式培训,将创建一个包含参数服务器和工作程序的集群。通过将多个地址收集到单独的群集中,我在分布式TensorFlow中实现了多个群集。但是,变量只能在同一集群中共享。
parameter_servers1 = ["localhost:2221"]
workers1 = [ "localhost:2223", "localhost: 2224", "localhost: 2225"]
cluster1 = tf.train.ClusterSpec({"ps":parameter_servers1, "worker":workers1})
parameter_servers2 = ["localhost:2222"]
workers2 = [ "localhost: 2226"]
cluster2 = tf.train.ClusterSpec({"ps":parameter_servers2, "worker":workers2})
if FLAGS.which_ps == 0:
server = tf.train.Server(cluster1,
job_name=FLAGS.job_name,
task_index=FLAGS.task_index,
config=config)
elif FLAGS.which_ps == 1:
server = tf.train.Server(cluster2,
job_name=FLAGS.job_name,
task_index=FLAGS.task_index,
config=config)
因此,在TensorFlow中的集群之间有参数共享的实现这些集群的线索吗?