1 // Generated by the protocol buffer compiler.  DO NOT EDIT!
2 // source: tensorflow/core/protobuf/autotuning.proto
3 
4 module tensorflow.autotuning;
5 
6 import google.protobuf;
7 import google.protobuf.any;
8 import google.protobuf.duration;
9 
10 enum protocVersion = 3012004;
11 
12 class CudnnVersion
13 {
14     @Proto(1) int major = protoDefaultValue!(int);
15     @Proto(2) int minor = protoDefaultValue!(int);
16     @Proto(3) int patch = protoDefaultValue!(int);
17 }
18 
19 class ComputeCapability
20 {
21     @Proto(1) int major = protoDefaultValue!(int);
22     @Proto(2) int minor = protoDefaultValue!(int);
23 }
24 
25 class AutotuneResult
26 {
27     enum KeyCase
28     {
29         keyNotSet = 0,
30         conv = 5,
31         gemm = 6,
32     }
33     KeyCase _keyCase = KeyCase.keyNotSet;
34     @property KeyCase keyCase() { return _keyCase; }
35     void clearKey() { _keyCase = KeyCase.keyNotSet; }
36     @Oneof("_keyCase") union
37     {
38         @Proto(5) AutotuneResult.ConvKey _conv = protoDefaultValue!(AutotuneResult.ConvKey); mixin(oneofAccessors!_conv);
39         @Proto(6) AutotuneResult.GemmKey _gemm; mixin(oneofAccessors!_gemm);
40     }
41     @Proto(7) AutotuneResult.FailureResult failure = protoDefaultValue!(AutotuneResult.FailureResult);
42     @Proto(8) long scratchBytes = protoDefaultValue!(long);
43     @Proto(9) Duration runTime = protoDefaultValue!(Duration);
44 
45     static class FailureResult
46     {
47         @Proto(1) FailureKind kind = protoDefaultValue!(FailureKind);
48         @Proto(2) string msg = protoDefaultValue!(string);
49         enum KeyCase
50         {
51             keyNotSet = 0,
52             referenceConv = 11,
53             referenceGemm = 12,
54         }
55         KeyCase _keyCase = KeyCase.keyNotSet;
56         @property KeyCase keyCase() { return _keyCase; }
57         void clearKey() { _keyCase = KeyCase.keyNotSet; }
58         @Oneof("_keyCase") union
59         {
60             @Proto(11) AutotuneResult.ConvKey _referenceConv = protoDefaultValue!(AutotuneResult.ConvKey); mixin(oneofAccessors!_referenceConv);
61             @Proto(12) AutotuneResult.GemmKey _referenceGemm; mixin(oneofAccessors!_referenceGemm);
62         }
63         @Proto(13) long bufferAddress = protoDefaultValue!(long);
64     }
65 
66     static class ConvKey
67     {
68         @Proto(1) long algorithm = protoDefaultValue!(long);
69         @Proto(2) bool tensorOpsEnabled = protoDefaultValue!(bool);
70     }
71 
72     static class GemmKey
73     {
74         @Proto(1) long algorithm = protoDefaultValue!(long);
75     }
76 
77     enum FailureKind
78     {
79         UNKNOWN = 0,
80         REDZONE_MODIFIED = 1,
81         WRONG_RESULT = 2,
82     }
83 }
84 
85 class AutotuningLog
86 {
87     @Proto(1) Any instr = protoDefaultValue!(Any);
88     @Proto(2) AutotuneResult[] results = protoDefaultValue!(AutotuneResult[]);
89     @Proto(3) CudnnVersion cudnnVersion = protoDefaultValue!(CudnnVersion);
90     @Proto(4) ComputeCapability computeCapability = protoDefaultValue!(ComputeCapability);
91     @Proto(5) string devicePciBusId = protoDefaultValue!(string);
92     @Proto(6) string blasVersion = protoDefaultValue!(string);
93 }