blob: d1c41fe2136f4ad720bf9981e7c9f69d65abaa3a [file] [log] [blame]
Jan Eilers31a7c892021-01-29 14:18:13 +00001/// Copyright (c) 2021 ARM Limited and Contributors. All rights reserved.
2///
3/// SPDX-License-Identifier: MIT
4///
5
6namespace armnn
7{
8/**
9@page delegate TfLite Delegate
10@tableofcontents
11
12
13@section delegateintro About the delegate
14'armnnDelegate' is a library for accelerating certain TensorFlow Lite (TfLite) operators on Arm hardware. It can be
15integrated in TfLite using its delegation mechanism. TfLite will then delegate the execution of operators supported by
16Arm NN to Arm NN.
17
18The main difference to our @ref S6_tf_lite_parser is the amount of operators you can run with it. If none of the active
19backends support an operation in your model you won't be able to execute it with our parser. In contrast to that, TfLite
20only delegates operations to the armnnDelegate if it does support them and otherwise executes them itself. In other
21words, every TfLite model can be executed and every operation in your model that we can accelerate will be accelerated.
22That is the reason why the armnnDelegate is our recommended way to accelerate TfLite models.
23
24If you need help building the armnnDelegate, please take a look at our [build guide](delegate/BuildGuideNative.md).
25An example how to setup TfLite to integrate the armnnDelegate can be found in this
26guide: [Integrate the delegate into python](delegate/IntegrateDelegateIntoPython.md)
27
28
29@section delegatesupport Supported Operators
30This reference guide provides a list of TensorFlow Lite operators the Arm NN SDK currently supports.
31
32@subsection delegatefullysupported Fully supported
33
34The Arm NN SDK TensorFlow Lite delegate currently supports the following operators:
35
36- ABS
37
38- ADD
39
40- ARGMAX
41
42- ARGMIN
43
44- AVERAGE_POOL_2D, Supported Fused Activation: RELU , RELU6 , TANH, NONE
45
Ryan OShead21abaf2022-06-10 14:49:11 +010046- AVERAGE_POOL_3D
47
Matthew Sloyana35b40b2021-02-05 17:22:28 +000048- BATCH_TO_SPACE_ND
49
Sadik Armagan937565b2021-04-21 14:03:28 +010050- CAST
51
Jan Eilers31a7c892021-01-29 14:18:13 +000052- CONCATENATION, Supported Fused Activation: RELU , RELU6 , TANH, NONE
53
54- CONV_2D, Supported Fused Activation: RELU , RELU6 , TANH, NONE
55
Matthew Sloyan81ec9942021-10-12 10:26:30 +010056- CONV_3D, Supported Fused Activation: RELU , RELU6 , TANH, NONE
57
Jan Eilers31a7c892021-01-29 14:18:13 +000058- DEPTH_TO_SPACE
59
60- DEPTHWISE_CONV_2D, Supported Fused Activation: RELU , RELU6 , TANH, NONE
61
62- DEQUANTIZE
63
64- DIV
65
66- EQUAL
67
68- ELU
69
70- EXP
71
72- FULLY_CONNECTED, Supported Fused Activation: RELU , RELU6 , TANH, NONE
73
Sadik Armagan788e2c62021-02-10 16:26:44 +000074- FLOOR
75
Jan Eilers31a7c892021-01-29 14:18:13 +000076- GATHER
77
Teresa Charlind5c0ed22022-04-25 18:23:41 +010078- GATHER_ND
79
Jan Eilers31a7c892021-01-29 14:18:13 +000080- GREATER
81
82- GREATER_OR_EQUAL
83
84- HARD_SWISH
85
86- LESS
87
88- LESS_OR_EQUAL
89
90- LOCAL_RESPONSE_NORMALIZATION
91
92- LOGICAL_AND
Jan Eilers1121c6b2021-02-19 09:38:03 +000093
Jan Eilers31a7c892021-01-29 14:18:13 +000094- LOGICAL_NOT
Jan Eilers1121c6b2021-02-19 09:38:03 +000095
Jan Eilers31a7c892021-01-29 14:18:13 +000096- LOGICAL_OR
97
98- LOGISTIC
99
100- LOG_SOFTMAX
101
Jan Eilers1121c6b2021-02-19 09:38:03 +0000102- LSTM
103
Jan Eilers31a7c892021-01-29 14:18:13 +0000104- L2_NORMALIZATION
105
106- L2_POOL_2D
107
108- MAXIMUM
109
110- MAX_POOL_2D, Supported Fused Activation: RELU , RELU6 , TANH, NONE
111
Ryan OShead21abaf2022-06-10 14:49:11 +0100112- MAX_POOL_3D
113
Jan Eilers31a7c892021-01-29 14:18:13 +0000114- MEAN
115
116- MINIMUM
117
Matthew Sloyanaf3a4ef2021-10-22 15:48:12 +0100118- MIRROR_PAD
119
Jan Eilers31a7c892021-01-29 14:18:13 +0000120- MUL
121
122- NEG
123
124- NOT_EQUAL
125
Kevin Mayc7bd7e82021-05-10 12:46:40 +0100126- PACK
127
Jan Eilers31a7c892021-01-29 14:18:13 +0000128- PAD
129
Jan Eilers1121c6b2021-02-19 09:38:03 +0000130- PRELU
131
Jan Eilers31a7c892021-01-29 14:18:13 +0000132- QUANTIZE
133
Jan Eilers1121c6b2021-02-19 09:38:03 +0000134- RANK
135
136- REDUCE_MAX
137
138- REDUCE_MIN
139
Jan Eilers31a7c892021-01-29 14:18:13 +0000140- RESHAPE
141
142- RESIZE_BILINEAR
143
144- RESIZE_NEAREST_NEIGHBOR
145
146- RELU
147
148- RELU6
149
150- RSQRT
151
Matthew Sloyane369dbd2021-08-19 12:05:44 +0100152- SHAPE
153
Jan Eilers31a7c892021-01-29 14:18:13 +0000154- SOFTMAX
155
Matthew Sloyana35b40b2021-02-05 17:22:28 +0000156- SPACE_TO_BATCH_ND
157
Jan Eilers31a7c892021-01-29 14:18:13 +0000158- SPACE_TO_DEPTH
159
160- SPLIT
161
162- SPLIT_V
163
164- SQRT
165
Jan Eilers1121c6b2021-02-19 09:38:03 +0000166- STRIDED_SLICE
167
Jan Eilers31a7c892021-01-29 14:18:13 +0000168- SUB
169
Jan Eilers1121c6b2021-02-19 09:38:03 +0000170- SUM
171
Jan Eilers31a7c892021-01-29 14:18:13 +0000172- TANH
173
174- TRANSPOSE
175
176- TRANSPOSE_CONV
177
Narumol Prangnawaratbd575b22021-08-31 16:53:54 +0100178- UNIDIRECTIONAL_SEQUENCE_LSTM
179
Kevin Mayc7bd7e82021-05-10 12:46:40 +0100180- UNPACK
181
Jan Eilers31a7c892021-01-29 14:18:13 +0000182More machine learning operators will be supported in future releases.
183**/
184}