ClusterSpec
Defined in tensorflow/python/training/server_lib.py.
See the guide: Training > Distributed execution
Represents a cluster as a set of "tasks", organized into "jobs".
A tf.train.ClusterSpec represents the set of processes that participate in a distributed TensorFlow computation. Every tf.train.Server is constructed in a particular cluster.
To create a cluster with two jobs and five tasks, you specify the mapping from job names to lists of network addresses (typically hostname-port pairs).
cluster = tf.train.ClusterSpec({"worker": ["worker0.example.com:2222",
"worker1.example.com:2222",
"worker2.example.com:2222"],
"ps": ["ps0.example.com:2222",
"ps1.example.com:2222"]})
Each job may also be specified as a sparse mapping from task indices to network addresses. This enables a server to be configured without needing to know the identity of (for example) all other worker tasks:
cluster = tf.train.ClusterSpec({"worker": {1: "worker1.example.com:2222"},
"ps": ["ps0.example.com:2222",
"ps1.example.com:2222"]})
jobsReturns a list of job names in this cluster.
A list of strings, corresponding to the names of jobs in this cluster.
__init____init__(cluster)
Creates a ClusterSpec.
cluster: A dictionary mapping one or more job names to (i) a list of network addresses, or (ii) a dictionary mapping integer task indices to network addresses; or a tf.train.ClusterDef protocol buffer.TypeError: If cluster is not a dictionary mapping strings to lists of strings, and not a tf.train.ClusterDef protobuf.__bool____bool__()
__eq____eq__(other)
Return self==value.
__ne____ne__(other)
Return self!=value.
__nonzero____nonzero__()
as_cluster_defas_cluster_def()
Returns a tf.train.ClusterDef protocol buffer based on this cluster.
as_dictas_dict()
Returns a dictionary from job names to their tasks.
For each job, if the task index space is dense, the corresponding value will be a list of network addresses; otherwise it will be a dictionary mapping (sparse) task indices to the corresponding addresses.
A dictionary mapping job names to lists or dictionaries describing the tasks in those jobs.
job_tasksjob_tasks(job_name)
Returns a mapping from task ID to address in the given job.
NOTE: For backwards compatibility, this method returns a list. If the given job was defined with a sparse set of task indices, the length of this list may not reflect the number of tasks defined in this job. Use the tf.train.ClusterSpec.num_tasks method to find the number of tasks defined in a particular job.
job_name: The string name of a job in this cluster.A list of task addresses, where the index in the list corresponds to the task index of each task. The list may contain None if the job was defined with a sparse set of task indices.
ValueError: If job_name does not name a job in this cluster.num_tasksnum_tasks(job_name)
Returns the number of tasks defined in the given job.
job_name: The string name of a job in this cluster.The number of tasks defined in the given job.
ValueError: If job_name does not name a job in this cluster.task_addresstask_address(
job_name,
task_index
)
Returns the address of the given task in the given job.
job_name: The string name of a job in this cluster.task_index: A non-negative integer.The address of the given task in the given job.
ValueError: If job_name does not name a job in this cluster, or no task with index task_index is defined in that job.task_indicestask_indices(job_name)
Returns a list of valid task indices in the given job.
job_name: The string name of a job in this cluster.A list of valid task indices in the given job.
ValueError: If job_name does not name a job in this cluster, or no task with index task_index is defined in that job.
© 2018 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/train/ClusterSpec