aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/distributed_runtime/master_session.h
diff options
context:
space:
mode:
authorGravatar Derek Murray <mrry@google.com>2017-01-13 13:53:23 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2017-01-13 14:09:08 -0800
commit3699dfecc5942cab5f3c488442c07bccfd64261d (patch)
tree640765c8d2bbf2eff69a51e763a8d48e9a971c93 /tensorflow/core/distributed_runtime/master_session.h
parent152f9fc2afe436b8165bdcc08d982fe3ec19172d (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.h6
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);