| // This file defines protos that store the results of autotuning various |
| // operations. |
| // |
| // They are in proto format because we want to log them structured. They offer |
| // tremendous statistical, testing, and debugging value. |
| syntax = "proto3"; |
| |
| package tensorflow; |
| |
| import "google/protobuf/any.proto"; |
| import "google/protobuf/duration.proto"; |
| |
| option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf"; |
| |
| message CudnnVersion { |
| int32 major = 1; |
| int32 minor = 2; |
| int32 patch = 3; |
| } |
| |
| message ComputeCapability { |
| int32 major = 1; |
| int32 minor = 2; |
| } |
| |
| message AutotuneResult { |
| enum FailureKind { |
| UNKNOWN = 0; |
| REDZONE_MODIFIED = 1; |
| WRONG_RESULT = 2; |
| } |
| |
| message FailureResult { |
| FailureKind kind = 1; |
| string msg = 2; |
| |
| // For failure_kind == WRONG_RESULT, this field indicates the reference |
| // configuration that we compared against. |
| // |
| // Note that the reference algorithm isn't always correct. However, |
| // empirically it's more correct, as it's "algo 0", less fancy than the |
| // compared one. |
| oneof key { |
| ConvKey reference_conv = 11; |
| GemmKey reference_gemm = 12; |
| } |
| |
| int64 buffer_address = 13; |
| } |
| |
| message ConvKey { |
| int64 algorithm = 1; |
| bool tensor_ops_enabled = 2; |
| } |
| |
| message GemmKey { |
| int64 algorithm = 1; |
| } |
| |
| int64 scratch_bytes = 8; |
| google.protobuf.Duration run_time = 9; |
| |
| FailureResult failure = 7; |
| |
| oneof key { |
| ConvKey conv = 5; |
| GemmKey gemm = 6; |
| } |
| |
| // Next ID: 14 |
| } |
| |
| message AutotuningLog { |
| google.protobuf.Any instr = 1; |
| |
| // Records all auto-tuning results per algorithm. |
| repeated AutotuneResult results = 2; |
| |
| CudnnVersion cudnn_version = 3; |
| ComputeCapability compute_capability = 4; |
| |
| // stream_executor::DeviceDescription::pci_bus_id. |
| string device_pci_bus_id = 5; |
| |
| string blas_version = 6; |
| |
| // Next ID: 7 |
| } |