| 401 | } |
| 402 | |
| 403 | StatusOr<Literal> LocalClient::TransferFromOutfeedLocal(const Shape& shape, |
| 404 | int device_ordinal) { |
| 405 | TF_ASSIGN_OR_RETURN(se::StreamExecutor * executor, |
| 406 | backend().stream_executor(device_ordinal)); |
| 407 | auto literal = Literal::CreateFromShape(shape); |
| 408 | TF_RETURN_IF_ERROR(backend().transfer_manager()->TransferLiteralFromOutfeed( |
| 409 | executor, shape, &literal)); |
| 410 | return std::move(literal); |
| 411 | } |
| 412 | |
| 413 | StatusOr<int> LocalClient::ReplicaNumberToDeviceOrdinal(int replica_number) { |
| 414 | return local_service_->ReplicaNumberToDeviceOrdinal(replica_number); |
no test coverage detected