SMAUG
Simulating Machine Learning Applications on gem5-Aladdin
types.proto
1 syntax = "proto3";
2 
3 package smaug;
4 
5 enum DataType {
6  UnknownDataType = 0;
7  Int32 = 1;
8  Int64 = 2;
9  Float16 = 3;
10  Float32 = 4;
11  Float64 = 5;
12  Bool = 6;
13 }
14 
15 enum DataLayout {
16  option allow_alias = true;
17  UnknownLayout = 0;
18  NCHW = 1;
19  NHWC = 2;
20  NC = 4;
21  CN = 8;
22  NCT = 16;
23  NTC = 32;
24  N = 64;
25  X = 127; // Elementwise
26  EndDataLayout = 64;
27 }
28 
29 enum DataStorageFormat {
30  UnknownStorageFormat = 0;
31  Uncompressed = 1;
32  CSR = 2;
33  PackedCSR = 3;
34  UncompressedHalfPrecision = 4;
35 }
36 
37 enum OpType {
38  UnknownOp = 0;
39  Convolution3d = 1;
40  ConvolutionDepthwise = 2;
41  MaxPooling = 3;
42  AveragePooling = 4;
43  InnerProduct = 5;
44  BatchNorm = 6;
45  Data = 7;
46  ReLU = 8;
47  LReLU = 9;
48  ELU = 10;
49  SELU = 11;
50  Tanh = 12;
51  HardTanh = 13;
52  Sigmoid = 14;
53  Softmax = 15;
54  EltwiseAdd = 16;
55  Reorder = 17;
56  EltwiseMul = 18;
57  Concat = 19;
58  Split = 20;
59  Reshape = 21;
60  Repeat = 22;
61  Less = 23;
62  LessEqual = 24;
63  Greater = 25;
64  GreaterEqual = 26;
65  Switch = 27;
66  Merge = 28;
67  Padding = 29;
68 }
69 
70 enum PaddingType {
71  UnknownPadding = 0;
72  SamePadding = 1;
73  ValidPadding = 2;
74 }
75 
76 enum HostMemoryAccessPolicy {
77  UnknownMemoryPolicy = 0;
78  AllDma = 1;
79  AllAcp = 2;
80  reserved 3; // Previously AllCache.
81  AllAcpWithDmaForWeights = 4;
82 }