Class Server
Aliases:
- Class
tf.distribute.Server
- Class
tf.train.Server
Defined in tensorflow/python/training/server_lib.py
.
An in-process TensorFlow server, for use in distributed training.
A tf.train.Server
instance encapsulates a set of devices and a
tf.Session
target that
can participate in distributed training. A server belongs to a
cluster (specified by a tf.train.ClusterSpec
), and
corresponds to a particular task in a named job. The server can
communicate with any other server in the same cluster.
__init__
__init__(
server_or_cluster_def,
job_name=None,
task_index=None,
protocol=None,
config=None,
start=True
)
Creates a new server with the given definition.
The job_name
, task_index
, and protocol
arguments are optional, and
override any information provided in server_or_cluster_def
.
Args:
server_or_cluster_def
: Atf.train.ServerDef
ortf.train.ClusterDef
protocol buffer, or atf.train.ClusterSpec
object, describing the server to be created and/or the cluster of which it is a member.job_name
: (Optional.) Specifies the name of the job of which the server is a member. Defaults to the value inserver_or_cluster_def
, if specified.task_index
: (Optional.) Specifies the task index of the server in its job. Defaults to the value inserver_or_cluster_def
, if specified. Otherwise defaults to 0 if the server's job has only one task.protocol
: (Optional.) Specifies the protocol to be used by the server. Acceptable values include"grpc", "grpc+verbs"
. Defaults to the value inserver_or_cluster_def
, if specified. Otherwise defaults to"grpc"
.config
: (Options.) Atf.ConfigProto
that specifies default configuration options for all sessions that run on this server.start
: (Optional.) Boolean, indicating whether to start the server after creating it. Defaults toTrue
.
Raises:
tf.errors.OpError
: Or one of its subclasses if an error occurs while creating the TensorFlow server.
Properties
server_def
Returns the tf.train.ServerDef
for this server.
Returns:
A tf.train.ServerDef
protocol buffer that describes the configuration
of this server.
target
Returns the target for a tf.Session
to connect to this server.
To create a
tf.Session
that
connects to this server, use the following snippet:
server = tf.train.Server(...)
with tf.Session(server.target):
# ...
Returns:
A string containing a session target for this server.
Methods
tf.distribute.Server.create_local_server
@staticmethod
create_local_server(
config=None,
start=True
)
Creates a new single-process cluster running on the local host.
This method is a convenience wrapper for creating a
tf.train.Server
with a tf.train.ServerDef
that specifies a
single-process cluster containing a single task in a job called
"local"
.
Args:
config
: (Options.) Atf.ConfigProto
that specifies default configuration options for all sessions that run on this server.start
: (Optional.) Boolean, indicating whether to start the server after creating it. Defaults toTrue
.
Returns:
A local tf.train.Server
.
tf.distribute.Server.join
join()
Blocks until the server has shut down.
This method currently blocks forever.
Raises:
tf.errors.OpError
: Or one of its subclasses if an error occurs while joining the TensorFlow server.
tf.distribute.Server.start
start()
Starts this server.
Raises:
tf.errors.OpError
: Or one of its subclasses if an error occurs while starting the TensorFlow server.