aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/compiler/tf2xla/host_compute_metadata.proto
blob: 43ab371a217e6c4521a160715104c96e3c8782c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
syntax = "proto3";

package tensorflow.tf2xla;
option cc_enable_arenas = true;
option java_outer_classname = "Tf2XlaProtos";
option java_multiple_files = true;
option java_package = "org.tensorflow.tf2xla";

import "tensorflow/core/framework/tensor_shape.proto";
import "tensorflow/core/framework/types.proto";

// TensorMetadata indicates the type and shape of a Tensor that is
// part of a host compute transfer.
message TensorMetadata {
  DataType type = 1;
  TensorShapeProto shape = 2;
}

// HostTransferMetadata describes a transfer either from host to device
// or device to host. It has a key that is unique to the computation,
// and metadata about the list of tensors being transferred.
message HostTransferMetadata {
  // The key used to identify this transfer.
  string key = 1;

  // For each Tensor being transferred, its type and shape.
  repeated TensorMetadata metadata = 2;
}

// HostComputeMetadata describes all the sends and recvs
// from all host compute transfer ops in a computation.
message HostComputeMetadata {
  // Metadata about each device_to_host transfer
  repeated HostTransferMetadata device_to_host = 1;

  // Metadata about each host_to_device transfer
  repeated HostTransferMetadata host_to_device = 2;
}