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"]})
jobs
Returns 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_def
as_cluster_def()
Returns a tf.train.ClusterDef
protocol buffer based on this cluster.
as_dict
as_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_tasks
job_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_tasks
num_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_address
task_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_indices
task_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