xref: /aosp_15_r20/external/armnn/docs/05_02_deserializer_serializer.dox (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1*89c4ff92SAndroid Build Coastguard Worker/// Copyright (c) 2021 ARM Limited and Contributors. All rights reserved.
2*89c4ff92SAndroid Build Coastguard Worker///
3*89c4ff92SAndroid Build Coastguard Worker/// SPDX-License-Identifier: MIT
4*89c4ff92SAndroid Build Coastguard Worker///
5*89c4ff92SAndroid Build Coastguard Worker
6*89c4ff92SAndroid Build Coastguard Workernamespace armnn
7*89c4ff92SAndroid Build Coastguard Worker{
8*89c4ff92SAndroid Build Coastguard Worker/**
9*89c4ff92SAndroid Build Coastguard Worker@page serializer Serializer
10*89c4ff92SAndroid Build Coastguard Worker@tableofcontents
11*89c4ff92SAndroid Build Coastguard Worker
12*89c4ff92SAndroid Build Coastguard WorkerThe `armnnSerializer` is a library for serializing an Arm NN network to a stream.
13*89c4ff92SAndroid Build Coastguard Worker
14*89c4ff92SAndroid Build Coastguard Worker@section serializersupport Supported Layers
15*89c4ff92SAndroid Build Coastguard Worker
16*89c4ff92SAndroid Build Coastguard WorkerThis reference guide provides a list of layers which can be serialized by the Arm NN SDK.
17*89c4ff92SAndroid Build Coastguard Worker
18*89c4ff92SAndroid Build Coastguard Worker@subsection serializersupportflully Fully supported
19*89c4ff92SAndroid Build Coastguard Worker
20*89c4ff92SAndroid Build Coastguard WorkerThe Arm NN SDK Serializer currently supports the following layers:
21*89c4ff92SAndroid Build Coastguard Worker
22*89c4ff92SAndroid Build Coastguard Worker- Activation
23*89c4ff92SAndroid Build Coastguard Worker- Addition
24*89c4ff92SAndroid Build Coastguard Worker- ArgMinMax
25*89c4ff92SAndroid Build Coastguard Worker- BatchMatMul
26*89c4ff92SAndroid Build Coastguard Worker- BatchToSpaceNd
27*89c4ff92SAndroid Build Coastguard Worker- BatchNormalization
28*89c4ff92SAndroid Build Coastguard Worker- Cast
29*89c4ff92SAndroid Build Coastguard Worker- ChannelShuffle
30*89c4ff92SAndroid Build Coastguard Worker- Comparison
31*89c4ff92SAndroid Build Coastguard Worker- Concat
32*89c4ff92SAndroid Build Coastguard Worker- Constant
33*89c4ff92SAndroid Build Coastguard Worker- Convolution2d
34*89c4ff92SAndroid Build Coastguard Worker- Convolution3d
35*89c4ff92SAndroid Build Coastguard Worker- DepthToSpace
36*89c4ff92SAndroid Build Coastguard Worker- DepthwiseConvolution2d
37*89c4ff92SAndroid Build Coastguard Worker- Dequantize
38*89c4ff92SAndroid Build Coastguard Worker- DetectionPostProcess
39*89c4ff92SAndroid Build Coastguard Worker- Division
40*89c4ff92SAndroid Build Coastguard Worker- ElementwiseUnary
41*89c4ff92SAndroid Build Coastguard Worker- Fill
42*89c4ff92SAndroid Build Coastguard Worker- Floor
43*89c4ff92SAndroid Build Coastguard Worker- FullyConnected
44*89c4ff92SAndroid Build Coastguard Worker- Gather
45*89c4ff92SAndroid Build Coastguard Worker- GatherNd
46*89c4ff92SAndroid Build Coastguard Worker- Input
47*89c4ff92SAndroid Build Coastguard Worker- InstanceNormalization
48*89c4ff92SAndroid Build Coastguard Worker- L2Normalization
49*89c4ff92SAndroid Build Coastguard Worker- Logical
50*89c4ff92SAndroid Build Coastguard Worker- LogSoftmax
51*89c4ff92SAndroid Build Coastguard Worker- Lstm
52*89c4ff92SAndroid Build Coastguard Worker- Maximum
53*89c4ff92SAndroid Build Coastguard Worker- Mean
54*89c4ff92SAndroid Build Coastguard Worker- Merge
55*89c4ff92SAndroid Build Coastguard Worker- Minimum
56*89c4ff92SAndroid Build Coastguard Worker- Multiplication
57*89c4ff92SAndroid Build Coastguard Worker- Normalization
58*89c4ff92SAndroid Build Coastguard Worker- Output
59*89c4ff92SAndroid Build Coastguard Worker- Pad (Constant, Symmetric, Reflect)
60*89c4ff92SAndroid Build Coastguard Worker- Permute
61*89c4ff92SAndroid Build Coastguard Worker- Pooling2d
62*89c4ff92SAndroid Build Coastguard Worker- Pooling3d
63*89c4ff92SAndroid Build Coastguard Worker- Prelu
64*89c4ff92SAndroid Build Coastguard Worker- QLstm
65*89c4ff92SAndroid Build Coastguard Worker- Quantize
66*89c4ff92SAndroid Build Coastguard Worker- QuantizedLstm
67*89c4ff92SAndroid Build Coastguard Worker- Rank
68*89c4ff92SAndroid Build Coastguard Worker- Reduce
69*89c4ff92SAndroid Build Coastguard Worker- Reshape
70*89c4ff92SAndroid Build Coastguard Worker- Resize
71*89c4ff92SAndroid Build Coastguard Worker- Shape
72*89c4ff92SAndroid Build Coastguard Worker- Slice
73*89c4ff92SAndroid Build Coastguard Worker- Softmax
74*89c4ff92SAndroid Build Coastguard Worker- SpaceToBatchNd
75*89c4ff92SAndroid Build Coastguard Worker- SpaceToDepth
76*89c4ff92SAndroid Build Coastguard Worker- Splitter
77*89c4ff92SAndroid Build Coastguard Worker- Stack
78*89c4ff92SAndroid Build Coastguard Worker- StandIn
79*89c4ff92SAndroid Build Coastguard Worker- StridedSlice
80*89c4ff92SAndroid Build Coastguard Worker- Subtraction
81*89c4ff92SAndroid Build Coastguard Worker- Switch
82*89c4ff92SAndroid Build Coastguard Worker- Transpose
83*89c4ff92SAndroid Build Coastguard Worker- TransposeConvolution2d
84*89c4ff92SAndroid Build Coastguard Worker- UnidirectionalSequenceLstm
85*89c4ff92SAndroid Build Coastguard Worker
86*89c4ff92SAndroid Build Coastguard WorkerMore machine learning layers will be supported in future releases.
87*89c4ff92SAndroid Build Coastguard Worker
88*89c4ff92SAndroid Build Coastguard Worker@subsection serializersupportdeprecated Deprecated layers
89*89c4ff92SAndroid Build Coastguard Worker
90*89c4ff92SAndroid Build Coastguard WorkerSome layers have been deprecated and replaced by others layers. In order to maintain backward compatibility, serializations of these deprecated layers will deserialize to the layers that have replaced them, as follows:
91*89c4ff92SAndroid Build Coastguard Worker
92*89c4ff92SAndroid Build Coastguard Worker- Abs will deserialize as ElementwiseUnary
93*89c4ff92SAndroid Build Coastguard Worker- Equal will deserialize as Comparison
94*89c4ff92SAndroid Build Coastguard Worker- Greater will deserialize as Comparison
95*89c4ff92SAndroid Build Coastguard Worker- Merger will deserialize as Concat
96*89c4ff92SAndroid Build Coastguard Worker- ResizeBilinear will deserialize as Resize
97*89c4ff92SAndroid Build Coastguard Worker- Rsqrt will deserialize as ElementwiseUnary
98*89c4ff92SAndroid Build Coastguard Worker<br/><br/><br/><br/>
99*89c4ff92SAndroid Build Coastguard Worker
100*89c4ff92SAndroid Build Coastguard Worker@page deserializer Deserializer
101*89c4ff92SAndroid Build Coastguard Worker@tableofcontents
102*89c4ff92SAndroid Build Coastguard Worker
103*89c4ff92SAndroid Build Coastguard WorkerThe `armnnDeserializer` is a library for loading neural networks defined by Arm NN FlatBuffers files
104*89c4ff92SAndroid Build Coastguard Workerinto the Arm NN runtime.
105*89c4ff92SAndroid Build Coastguard Worker
106*89c4ff92SAndroid Build Coastguard Worker@section deserializersupport Supported Layers
107*89c4ff92SAndroid Build Coastguard Worker
108*89c4ff92SAndroid Build Coastguard WorkerThis reference guide provides a list of layers which can be deserialized by the Arm NN SDK.
109*89c4ff92SAndroid Build Coastguard Worker
110*89c4ff92SAndroid Build Coastguard Worker@subsection deserializersupportfully Fully supported
111*89c4ff92SAndroid Build Coastguard Worker
112*89c4ff92SAndroid Build Coastguard WorkerThe Arm NN SDK Deserialize parser currently supports the following layers:
113*89c4ff92SAndroid Build Coastguard Worker
114*89c4ff92SAndroid Build Coastguard Worker- Abs
115*89c4ff92SAndroid Build Coastguard Worker- Activation
116*89c4ff92SAndroid Build Coastguard Worker- Addition
117*89c4ff92SAndroid Build Coastguard Worker- ArgMinMax
118*89c4ff92SAndroid Build Coastguard Worker- BatchMatMul
119*89c4ff92SAndroid Build Coastguard Worker- BatchToSpaceNd
120*89c4ff92SAndroid Build Coastguard Worker- BatchNormalization
121*89c4ff92SAndroid Build Coastguard Worker- Cast
122*89c4ff92SAndroid Build Coastguard Worker- ChannelShuffle
123*89c4ff92SAndroid Build Coastguard Worker- Concat
124*89c4ff92SAndroid Build Coastguard Worker- Comparison
125*89c4ff92SAndroid Build Coastguard Worker- Constant
126*89c4ff92SAndroid Build Coastguard Worker- Convolution2d
127*89c4ff92SAndroid Build Coastguard Worker- DepthToSpace
128*89c4ff92SAndroid Build Coastguard Worker- DepthwiseConvolution2d
129*89c4ff92SAndroid Build Coastguard Worker- Dequantize
130*89c4ff92SAndroid Build Coastguard Worker- DetectionPostProcess
131*89c4ff92SAndroid Build Coastguard Worker- Division
132*89c4ff92SAndroid Build Coastguard Worker- ElementwiseUnary
133*89c4ff92SAndroid Build Coastguard Worker- Fill
134*89c4ff92SAndroid Build Coastguard Worker- Floor
135*89c4ff92SAndroid Build Coastguard Worker- FullyConnected
136*89c4ff92SAndroid Build Coastguard Worker- Gather
137*89c4ff92SAndroid Build Coastguard Worker- GatherNd
138*89c4ff92SAndroid Build Coastguard Worker- Input
139*89c4ff92SAndroid Build Coastguard Worker- InstanceNormalization
140*89c4ff92SAndroid Build Coastguard Worker- L2Normalization
141*89c4ff92SAndroid Build Coastguard Worker- Logical
142*89c4ff92SAndroid Build Coastguard Worker- LogSoftmax
143*89c4ff92SAndroid Build Coastguard Worker- Lstm
144*89c4ff92SAndroid Build Coastguard Worker- Maximum
145*89c4ff92SAndroid Build Coastguard Worker- Mean
146*89c4ff92SAndroid Build Coastguard Worker- Merge
147*89c4ff92SAndroid Build Coastguard Worker- Minimum
148*89c4ff92SAndroid Build Coastguard Worker- Multiplication
149*89c4ff92SAndroid Build Coastguard Worker- Normalization
150*89c4ff92SAndroid Build Coastguard Worker- Output
151*89c4ff92SAndroid Build Coastguard Worker- Pad
152*89c4ff92SAndroid Build Coastguard Worker- Permute
153*89c4ff92SAndroid Build Coastguard Worker- Pooling2d
154*89c4ff92SAndroid Build Coastguard Worker- Pooling3d
155*89c4ff92SAndroid Build Coastguard Worker- Prelu
156*89c4ff92SAndroid Build Coastguard Worker- Quantize
157*89c4ff92SAndroid Build Coastguard Worker- QLstm
158*89c4ff92SAndroid Build Coastguard Worker- QuantizedLstm
159*89c4ff92SAndroid Build Coastguard Worker- Rank
160*89c4ff92SAndroid Build Coastguard Worker- Reduce
161*89c4ff92SAndroid Build Coastguard Worker- Reshape
162*89c4ff92SAndroid Build Coastguard Worker- Resize
163*89c4ff92SAndroid Build Coastguard Worker- ResizeBilinear
164*89c4ff92SAndroid Build Coastguard Worker- Slice
165*89c4ff92SAndroid Build Coastguard Worker- Softmax
166*89c4ff92SAndroid Build Coastguard Worker- SpaceToBatchNd
167*89c4ff92SAndroid Build Coastguard Worker- SpaceToDepth
168*89c4ff92SAndroid Build Coastguard Worker- Splitter
169*89c4ff92SAndroid Build Coastguard Worker- Stack
170*89c4ff92SAndroid Build Coastguard Worker- StandIn
171*89c4ff92SAndroid Build Coastguard Worker- StridedSlice
172*89c4ff92SAndroid Build Coastguard Worker- Subtraction
173*89c4ff92SAndroid Build Coastguard Worker- Switch
174*89c4ff92SAndroid Build Coastguard Worker- Transpose
175*89c4ff92SAndroid Build Coastguard Worker- TransposeConvolution2d
176*89c4ff92SAndroid Build Coastguard Worker- UnidirectionalSequenceLstm
177*89c4ff92SAndroid Build Coastguard Worker
178*89c4ff92SAndroid Build Coastguard WorkerMore machine learning layers will be supported in future releases.
179*89c4ff92SAndroid Build Coastguard Worker
180*89c4ff92SAndroid Build Coastguard Worker@subsection deserializersupportdeprecated Deprecated layers
181*89c4ff92SAndroid Build Coastguard Worker
182*89c4ff92SAndroid Build Coastguard WorkerSome layers have been deprecated and replaced by others layers. In order to maintain backward compatibility, serializations of these deprecated layers will deserialize to the layers that have replaced them, as follows:
183*89c4ff92SAndroid Build Coastguard Worker
184*89c4ff92SAndroid Build Coastguard Worker- Equal will deserialize as Comparison
185*89c4ff92SAndroid Build Coastguard Worker- Merger will deserialize as Concat
186*89c4ff92SAndroid Build Coastguard Worker- Greater will deserialize as Comparison
187*89c4ff92SAndroid Build Coastguard Worker- ResizeBilinear will deserialize as Resize
188*89c4ff92SAndroid Build Coastguard Worker
189*89c4ff92SAndroid Build Coastguard Worker**/
190*89c4ff92SAndroid Build Coastguard Worker}