| 94 | } |
| 95 | |
| 96 | Status Client::TransferToInfeed(const LiteralSlice& literal, int64 replica_id, |
| 97 | const DeviceHandle* device_handle) { |
| 98 | TransferToInfeedRequest request; |
| 99 | *request.mutable_literal() = literal.ToProto(); |
| 100 | if (device_handle) { |
| 101 | *request.mutable_device_handle() = *device_handle; |
| 102 | } |
| 103 | request.set_replica_id(replica_id); |
| 104 | TransferToInfeedResponse response; |
| 105 | |
| 106 | VLOG(1) << "making transfer to infeed request"; |
| 107 | VLOG(3) << "TransferToInfeedRequest: {" << request.DebugString() << "}"; |
| 108 | Status s = stub_->TransferToInfeed(&request, &response); |
| 109 | VLOG(1) << "done with request"; |
| 110 | |
| 111 | if (!s.ok()) { |
| 112 | return s; |
| 113 | } |
| 114 | VLOG(3) << "TransferToInfeedResponse: {" << response.DebugString() << "}"; |
| 115 | return Status::OK(); |
| 116 | } |
| 117 | |
| 118 | StatusOr<Literal> Client::TransferFromOutfeed( |
| 119 | const Shape* shape_with_layout, int64 replica_id, |