package xla

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service DistributedRuntimeService

protocol.proto:110

service XlaService

xla_service.proto:49

/////////////////////// Global data requests

message BufferAllocationProto

hlo.proto:440

Serialization of BufferAllocation.

Used in: BufferAssignmentProto

message BufferAllocationProto.Assigned

hlo.proto:443

Assigned represents a single LogicalBuffer that is assigned to this BufferAllocation.

Used in: BufferAllocationProto

message BufferAssignmentProto

hlo.proto:506

Serialization of BufferAssignment.

Used in: HloProto

message BufferAssignmentProto.BufferAlias

hlo.proto:509

Alias represents a source LogicalBuffer, and the buffer location that aliases it.

Used in: BufferAssignmentProto

message ChannelHandle

xla_data.proto:360

Handle given to a user to represent a channel between two computations via a Send and Recv instruction pair. Channels are unbuffered, so Send Send instructions will be blocked until the data is transferred.

Used in: CreateChannelHandleResponse

enum ChannelHandle.ChannelType

xla_data.proto:362

Used in: ChannelHandle, CreateChannelHandleRequest

message CholeskyOptions

xla_data.proto:623

Used in: HloInstructionProto

message ComputationStats

xla_data.proto:241

Statistics of a computation.

Used in: ComputationStatsResponse

message ConvolutionDimensionNumbers

xla_data.proto:520

Used in: HloInstructionProto, poplarplugin.PoplarBackendConfig.FusionConfig

message CrossProgramPrefetch

hlo.proto:383

Used in: HloModuleProto

message CustomCallOutputOperandAliasing

xla_data.proto:740

Specifies a pair of output/operand buffers for kCustomCall that alias each other.

Used in: HloInstructionProto

enum CustomCallSchedule

hlo.proto:37

Used in: HloInstructionProto

message DebugOptions

xla.proto:25

Debugging options for XLA. These options may change at any time - there are no guarantees about backward or forward compatibility for these fields.

Used in: ComputationGraphStatsRequest, ExecutionOptions, xrt.XLAComputationConfig

enum DebugOptions.StepMarkerLocation

xla.proto:204

Used in: tensorflow.tpu.TPUCompileMetadataProto, DebugOptions

message DeviceAssignmentProto

xla_data.proto:383

DeviceAssignmentProto is a serialized form of DeviceAssignment class, which represents the device ids assigned to a set of replicated computations. See xla::DeviceAssignment class comment for more details.

Used in: tensorflow.TPUExecutableInfoProto, tensorflow.tpu.TPUCompileMetadataProto, tpu_driver.ExecuteRequest, ExecutionOptions

message DeviceAssignmentProto.ComputationDevice

xla_data.proto:389

Each logical computation runs on replica_count physical devices. ComputationDevice represents the device ids assinged to the replicas.

Used in: DeviceAssignmentProto

message DeviceHandle

xla_data.proto:349

Handle given to a user that represents a replicated virtual device. Each replicated device represents N physical devices for execution where N is the number of replicas.

Used in: ExecutionOptions, GetDeviceHandlesResponse, ResetDeviceRequest, TransferFromOutfeedRequest, TransferToInfeedRequest, TransferToServerRequest

message DeviceProto

protocol.proto:32

Describes a device local to a host.

Used in: LocalTopologyProto

message DotDimensionNumbers

xla_data.proto:571

Used in: HloInstructionProto, gpu.GemmBackendConfig

message DynamicParameterBindingProto

hlo.proto:348

Used in: HloModuleProto

message DynamicParameterBindingProto.Binding

hlo.proto:372

A list of bindings which indicates that the `target_dim_num` in the subshape `target_param_index` of parameter `target_param_num` is a dynamic dimension and its real dynamic size is represented by `dynamic_param_index` in parameter `dynamic_param_num`. As an example, imagine we have a program: ENTRY main { a = f32[] parameter(0) b = f32[10] parameter(1) ROOT root = (f32[], f32[10]) tuple(%a, %b) } Let's say 'b' (param index 1) is a dynamic shape whose input has an upperbound of 10 and real size is determined at runtime.'a' represents the real size of b's first dimension. In this case, the fields are set in the following way: dynamic_param_num = 1 dynamic_param_index = {} target_param_num = 0 target_param_index = {} target_param_dim = 0

Used in: DynamicParameterBindingProto

message ExecuteGraphRequest

xla.proto:526

TODO(b/118493728): Remove this and ExecuteGraphParallelRequest and replace the uses with calls to Compile and Execute.

Used in: ExecuteGraphParallelRequest

message ExecuteResponse

xla.proto:538

Used as response type in: XlaService.Execute

Used as field type in: ExecuteParallelResponse

message ExecutionHandle

xla_data.proto:335

Handle given to a user that represents an execution that the user launched asynchronously on the device.

Used in: CompileResponse, ExecuteRequest, WaitForExecutionRequest

message ExecutionOptions

xla.proto:351

These settings control how XLA compiles and/or runs code. Not all settings will have an effect on every platform. When adding new fields, keep in mind that boolean fields default to false.

Used in: CompileRequest, ExecuteGraphRequest

message ExecutionProfile

xla_data.proto:302

Profile data from the execution of a computation.

Used in: ExecuteResponse, WaitForExecutionResponse

enum FftType

xla_data.proto:563

Used in: HloInstructionProto

enum Format

xla_data.proto:113

A format specifies the method used by a layout to store an array in memory.

Used in: LayoutProto

message FrontendAttributes

xla_data.proto:631

Generic map of attributes used to pass hints / configuration options from the Python frontend to the XLA backend.

Used in: HloInstructionProto

message GatherDimensionNumbers

xla_data.proto:479

Describes the dimension numbers for a gather operation. See https://www.tensorflow.org/performance/xla/operation_semantics#gather for more details.

Used in: HloInstructionProto

message GlobalDataHandle

xla_data.proto:342

Handle given to a user that represents a globally accessible allocation. Contrast this against a ComputationDataHandle, which is not globally accessible, since it only exists within a specific computation.

Used in: DeconstructTupleRequest, DeconstructTupleResponse, ExecuteGraphRequest, ExecuteRequest, ExecuteResponse, GetShapeRequest, LoadDataResponse, TransferToClientRequest, TransferToServerResponse, UnpackRequest, UnpackResponse, UnregisterRequest, WaitForExecutionResponse

message GlobalTopologyProto

protocol.proto:49

Used in: EnumerateDevicesResponse

message HeapSimulatorTrace

hlo.proto:463

A trace of a HeapSimulator run.

Used in: BufferAssignmentProto

message HeapSimulatorTrace.Event

hlo.proto:466

The trace includes a list of events, where each event describes one action performed by the heap simulator.

Used in: HeapSimulatorTrace

enum HeapSimulatorTrace.Event.Kind

hlo.proto:467

Used in: Event

message HloComputationProto

hlo.proto:278

Serialization of HloComputation.

Used in: HloModuleProto

message HloExecutionProfileData

hlo_execution_profile_data.proto:24

message HloInputOutputAliasProto

hlo.proto:320

Used in: HloModuleProto

message HloInputOutputAliasProto.AliasEntryProto

hlo.proto:334

The following proto describes a pair of aliased an input (described by parameter number and a ShapeIndex of the parameter) and an output (described by a ShapeIndex of the root instruction). For example: entry = { output_shape_index={1}, parameter_number=0, parameter_shape_index={1, 2}, } This entry indicates that the first paremter's {1, 2} element is aliased with the {1} element of the root instruction.

Used in: HloInputOutputAliasProto

message HloInstructionProto

hlo.proto:45

Serialization of HloInstruction. Next ID: 77

Used in: HloComputationProto, gpu.ConvInstructionLog

message HloInstructionProto.SliceDimensions

hlo.proto:101

Describes the [begin, end) index range and stride for slices.

Used in: HloInstructionProto

message HloModuleGroupProto

hlo.proto:500

An abstraction representing a set of HLO module built to run concurrently across different devices.

message HloModuleMetadataProto

hlo.proto:549

Metadata for an HLO module. Dumped after HLO passes and before LLO lowering with filename module_####.metadata.textproto, where #### is canonical_module_id.

message HloModuleProto

hlo.proto:389

Serialization of HloModule.

Used in: tensorflow.tpu.UserDefinedProgramParameters, CompileRequest, ComputationGraphStatsRequest, ComputeConstantGraphRequest, ExecuteGraphRequest, HloModuleGroupProto, HloProto

message HloPassMetadata

hlo.proto:576

Metadata for one run of an HLO pass on a module. Provides more information when processing debug dumps of HloProtos about the order of HLO passes and various other stats like duration. `pass_id` may also be used to identify a particular run of a pass in debug info that propagates through stages of compilation.

Used in: HloModuleMetadataProto

message HloProfilePrinterData

hlo_profile_printer_data.proto:24

Describes how to pretty-print a profile counter array gathered for a specific HloModule.

Used in: HloExecutionProfileData

message HloProfilePrinterData.HloComputationInfo

hlo_profile_printer_data.proto:44

Pretty-printer information about an HloComputation.

Used in: HloProfilePrinterData

message HloProfilePrinterData.HloInstructionInfo

hlo_profile_printer_data.proto:26

Pretty-printer information about an HloInstruction.

Used in: HloComputationInfo

message HloProto

hlo.proto:521

Grouping message that contains all of the information above.

Used in: tensorflow.tpu.CompilationResultProto, tpu_driver.CompileRequest, HloSnapshot

message HloScheduleProto

hlo.proto:301

Serialization of an HLO schedule. An HLO schedule contains a total order of instructions for each non-fusion computation in the module.

Used in: HloModuleProto

message HloScheduleProto.InstructionSequence

hlo.proto:302

Used in: HloScheduleProto

message HloSnapshot

hlo.proto:532

Encapsulates HloProto together with the arguments, result, and execution_platform. This message is used for purposes such as analysis/replay/file-storage.

Used in: tensorflow.TPUExecutableInfoProto, xrt.XLAComputation

enum Kind

hlo.proto:310

Used in: HloInputOutputAliasProto.AliasEntryProto

message LayoutProto

xla_data.proto:144

A layout describes how the array is placed in (1D) memory space. This includes the minor-to-major ordering of dimensions within a shape. Clients must specify the layouts of input Literals to the computation. Layouts specified in interior operations which take Shapes (for example, Convert) are ignored. See the XLA documentation for more information on shapes and layouts. LINT.IfChange

Used in: ComputeConstantGraphRequest, ShapeProto, gpu.BitcastBackendConfig

message LiteralProto

xla_data.proto:401

Literals are used when the server and client need to exchange materialized data / results. Literals are also used to describe constants used in computations. Transfers to/from the client are encoded in literal form, and the structure of the repeated fields is implied by the shape.

Used in: ComputeConstantResponse, HloInstructionProto, HloSnapshot, TransferFromOutfeedResponse, TransferToClientResponse, TransferToInfeedRequest, TransferToServerRequest, xrt.XLAAllocation

message LocalTopologyProto

protocol.proto:44

Used in: EnumerateDevicesRequest, GlobalTopologyProto

message LogicalBufferProto

hlo.proto:419

Serialization of LogicalBuffer.

Used in: BufferAssignmentProto

message LogicalBufferProto.Location

hlo.proto:422

Location represents an instruction and its shape index, which uniquely identifies a point where a buffer is needed.

Used in: BufferAssignmentProto.BufferAlias, LogicalBufferProto

message OpMetadata

xla_data.proto:261

Symbolization metadata for HLO Instructions. This metadata is used for debugging XLA code generation, as well as performance profiling of XLA-generated executables.

Used in: HloInstructionProto, OpSharding

message OpSharding

xla_data.proto:635

Used in: tensorflow.tpu.TPUCompileMetadataProto.Arg, tensorflow.tpu.TPUCompileMetadataProto.Retval, HloInstructionProto

enum OpSharding.Type

xla_data.proto:636

Used in: OpSharding

message PaddingConfig

xla_data.proto:94

Describes the padding configuration for Pad operation. The padding amount on both edges as well as between the elements are specified for each dimension.

Used in: HloInstructionProto

message PaddingConfig.PaddingConfigDimension

xla_data.proto:96

Describes the padding configuration for a dimension.

Used in: PaddingConfig

enum PaddingType

xla_data.proto:557

Used in: HloInstructionProto

message ParameterReplication

xla_data.proto:711

Describes whether all data-parallelism replicas will receive the same parameter data at each buffer.

Used in: HloInstructionProto

message PrecisionConfig

xla_data.proto:696

Used to indicate the precision configuration. It has backend specific meaning.

Used in: HloInstructionProto

enum PrecisionConfig.Precision

xla_data.proto:697

Used in: PrecisionConfig

enum PrimitiveType

xla_data.proto:27

Primitive types are the individual values that can be held in rectangular multidimensional arrays. A description of the rectangular multidimensional array dimensions / primitive type is given by Shape, below. LINT.IfChange

Used in: tensorflow.TPUHostTransferProto, ShapeProto, poplarplugin.PoplarBackendConfig

enum ProfileType

xla_data.proto:250

The type optimization profiles in use.

Used in: OpMetadata

message ProgramShapeProto

xla_data.proto:234

Shape of the parameters and output of a computation (like a traditional function signature).

Used in: tpu_driver.CompiledProgramMetadata, HloComputationProto, HloModuleProto, xrt.XLAComputationConfig

enum RandomAlgorithm

xla_data.proto:596

Used in: HloInstructionProto

enum RandomDistribution

xla_data.proto:582

Used in: HloInstructionProto

message ReplicaGroup

xla_data.proto:682

Describes the replica groups in a cross replica op (e.g., all-reduce and all-to-all).

Used in: HloInstructionProto

message ScatterDimensionNumbers

xla_data.proto:510

Describes the dimension numbers for a scatter operation. All the fields are similar to the corresponding fields in GatherDimensionNumbers. Differences are noted below.

Used in: HloInstructionProto

message ShapeProto

xla_data.proto:196

A shape describes the number of dimensions in the array, the size of each dimension, and the primitive component type. Tuples are a special case in that they have rank zero and have tuple_shapes defined. See the XLA documentation for more information on shapes and layouts. LINT.IfChange

Used in: tensorflow.TPUExecutableInfoProto, tensorflow.TPUHostTransferProto, tpu_driver.AllocateRequest, CompileRequest, ExecutionOptions, GetShapeResponse, HloInstructionProto, LiteralProto, LoadDataRequest, LoadDataResponse, OpSharding, ProgramShapeProto, TransferFromOutfeedRequest, TransferToClientRequest, gpu.ConvInstructionLog, poplarplugin.FeedConfig, poplarplugin.HostEmbeddingConfig, poplarplugin.Input, poplarplugin.Output, poplarplugin.SendRecvConfig

message SourceTarget

xla_data.proto:689

Describes the source target pair in the collective permute op.

Used in: HloInstructionProto

message TileProto

xla_data.proto:126

Describes a tile used in tiling-based layout. Refer to g3doc/third_party/tensorflow/compiler/xla/g3doc/tiled_layout.md for details about tiling-based layout.

Used in: LayoutProto

message TriangularSolveOptions

xla_data.proto:603

Used in: HloInstructionProto

enum TriangularSolveOptions.Transpose

xla_data.proto:614

Should we transpose or use the adjoint of 'a'?

Used in: TriangularSolveOptions

message WhileLoopBackendConfig

xla_data.proto:729

A backend-config for kWhile loops that stores the loop's trip count, if it is known. This is useful for backends that can implement a `for i in 0..N` loop more efficiently than a `while` loop. For example, on GPUs, we can implement a `for i in 0..N` loop by enqueueing the kernels for the loop body N times, whereas implementing a `while` loop requires a host-device sync on each iteration.

message WhileLoopBackendConfig.KnownTripCount

xla_data.proto:730

Used in: WhileLoopBackendConfig

message Window

xla_data.proto:471

Describes the windowing in an operation such as convolution. The window is moved across a base area and for each position of the window a computation is performed. The field below describes the window and the movement of the window across a base area.

Used in: HloInstructionProto, poplarplugin.PoplarBackendConfig.FusionConfig

message WindowDimension

xla_data.proto:424

Used in: Window