diff options
author | Derek Murray <mrry@google.com> | 2017-01-13 13:53:23 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2017-01-13 14:09:08 -0800 |
commit | 3699dfecc5942cab5f3c488442c07bccfd64261d (patch) | |
tree | 640765c8d2bbf2eff69a51e763a8d48e9a971c93 /tensorflow/core/distributed_runtime/master_session.h | |
parent | 152f9fc2afe436b8165bdcc08d982fe3ec19172d (diff) |
Provide multiple implementations of RPC responses on the fetch path.
This CL includes wrapper classes for the protocol buffer messages
`tensorflow::RunStepResponse` and `tensorflow::RunGraphResponse` (to
complement the corresponding request message wrappers that were added recently).
This change makes the backend code deal with abstract
`tensorflow::MutableRunStepResponseWrapper` and
`tensorflow::MutableRunGraphResponseWrapper` interfaces and adds three
concrete implementations of each interface:
* A mutable in-memory wrapper, which maintains the tensor data in
`tensorflow::Tensor` objects, and provides the most efficient
implementation when the client and master (or master and worker) or
in the same address space.
* A mutable, owned protobuf wrapper, which has a similar implementation
to today's client code.
* A mutable, non-owned protobuf wrapper, which has a similar
implementation to today's server code (where the protobuf message is
owned by the RPC subsystem).
This is another improvement for issue #6256.
Change: 144481118
Diffstat (limited to 'tensorflow/core/distributed_runtime/master_session.h')
-rw-r--r-- | tensorflow/core/distributed_runtime/master_session.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/tensorflow/core/distributed_runtime/master_session.h b/tensorflow/core/distributed_runtime/master_session.h index 8ab46539f3..4e78e08559 100644 --- a/tensorflow/core/distributed_runtime/master_session.h +++ b/tensorflow/core/distributed_runtime/master_session.h @@ -80,7 +80,7 @@ class MasterSession : public core::RefCounted { // Run one step. Status Run(CallOptions* opts, const RunStepRequestWrapper& req, - RunStepResponse* resp); + MutableRunStepResponseWrapper* resp); // Close this session and delete "*this". Returns OK if all known // states are cleanup successfully. @@ -177,9 +177,9 @@ class MasterSession : public core::RefCounted { RCGMap* rcg_map) EXCLUSIVE_LOCKS_REQUIRED(mu_); Status DoRunWithLocalExecution(CallOptions* opts, const RunStepRequestWrapper& req, - RunStepResponse* resp); + MutableRunStepResponseWrapper* resp); Status DoPartialRun(CallOptions* opts, const RunStepRequestWrapper& req, - RunStepResponse* resp); + MutableRunStepResponseWrapper* resp); void UpdateLastAccessTime(); Status BuildAndRegisterPartitions(ReffedClientGraph* rcg); |