/// /// Copyright (c) 2021-2024 Arm Limited. /// /// SPDX-License-Identifier: MIT /// /// Permission is hereby granted, free of charge, to any person obtaining a copy /// of this software and associated documentation files (the "Software"), to /// deal in the Software without restriction, including without limitation the /// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or /// sell copies of the Software, and to permit persons to whom the Software is /// furnished to do so, subject to the following conditions: /// /// The above copyright notice and this permission notice shall be included in all /// copies or substantial portions of the Software. /// /// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR /// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, /// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE /// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER /// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, /// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE /// SOFTWARE. /// namespace arm_compute { /** @page operators_list Supported Operators @tableofcontents @section S9_1_operators_list Supported Operators Compute Library supports operators that are listed in below table. Compute Library supports a wide list of data-types, information can been directly found in the documentation of each kernel/function. The main data-types that the Machine Learning functions support are the following:

- BFLOAT16: 16-bit non-standard brain floating point
- QASYMM8: 8-bit unsigned asymmetric quantized
- QASYMM8_SIGNED: 8-bit signed asymmetric quantized
- QSYMM8_PER_CHANNEL: 8-bit signed symmetric quantized (Used for the weights)
- QSYMM8: 8-bit unsigned symmetric quantized
- QSYMM16: 16-bit unsigned symmetric quantized
- F32: 32-bit single precision floating point
- F16: 16-bit half precision floating point
- S32: 32-bit signed integer
- U8: 8-bit unsigned char
- All: Agnostic to any specific data type

Compute Library supports the following data layouts (fast changing dimension from right to left):

- NHWC: The native layout of Compute Library that delivers the best performance where channels are in the fastest changing dimension
- NCHW: Legacy layout where width is in the fastest changing dimension
- NDHWC: New data layout for supporting 3D operators
- All: Agnostic to any specific data layout

where N = batches, C = channels, H = height, W = width, D = depth

Function | Description | Equivalent Android NNAPI Op | Backends | Data Layouts | Data Types
--- | --- | --- | --- | --- | ---
ActivationLayer | Function to simulate an activation layer with the specified activation function. | ANEURALNETWORKS_ELU ANEURALNETWORKS_HARD_SWISH ANEURALNETWORKS_LOGISTIC ANEURALNETWORKS_RELU ANEURALNETWORKS_RELU1 ANEURALNETWORKS_RELU6 ANEURALNETWORKS_TANH | NEActivationLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16
F16 | F16
F32 | F32
CLActivationLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16
F16 | F16
F32 | F32
AddMulAdd | Performs a fused Add + Mul + Add [+ Relu-based-Activation] operation. | n/a | NEAddMulAdd | Any |
input1 | input2 | bn_mul | bn_add | add_output | final_output
--- | --- | --- | --- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8 | QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16 | F16 | F16 | F16 | F16
F32 | F32 | F32 | F32 | F32 | F32
ArgMinMaxLayer | Function to calculate the index of the minimum or maximum values in a tensor based on an axis. | ANEURALNETWORKS_ARGMAX ANEURALNETWORKS_ARGMIN | NEArgMinMaxLayer | All |
src | dst
--- | ---
QASYMM8 | U32, S32
QASYMM8_SIGNED | U32, S32
S32 | U32, S32, S64
F16 | U32, S32
F32 | U32, S32
CLArgMinMaxLayer | All |
src | dst
--- | ---
QASYMM8 | U32, S32
QASYMM8_SIGNED | U32, S32
S32 | U32, S32
F16 | U32, S32
F32 | U32, S32
ArithmeticAddition | Function to add 2 tensors. | ANEURALNETWORKS_ADD | NEArithmeticAddition | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
QSYMM16 | QSYMM16 | S32
U8 | U8 | U8
S16 | S16 | S16
S32 | S32 | S32
F16 | F16 | F16
F32 | F32 | F32
ArithmeticSubtraction | Function to substract 2 tensors. | ANEURALNETWORKS_SUB | NEArithmeticSubtraction | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
S16 | S16 | S16
S32 | S32 | S32
F16 | F16 | F16
F32 | F32 | F32
BatchNormalizationLayer | Function to perform batch normalization. | n/a | NEBatchNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
CLBatchNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
BatchToSpaceLayer | Batch to space transformation. | ANEURALNETWORKS_BATCH_TO_SPACE_ND | NEBatchToSpaceLayer | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
All | s32 | All
CLBatchToSpaceLayer | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
All | s32 | All
BitwiseAnd | Function to perform bitwise AND between 2 tensors. | ANEURALNETWORKS_LOGICAL_AND | NEBitwiseAnd | All |
src | dst
--- | ---
U8 | U8
CLBitwiseAnd | All |
src | dst
--- | ---
U8 | U8
BitwiseNot | Function to perform bitwise NOT. | ANEURALNETWORKS_LOGICAL_NOT | NEBitwiseNot | All |
src | dst
--- | ---
U8 | U8
CLBitwiseNot | All |
src | dst
--- | ---
U8 | U8
BitwiseOr | Function to perform bitwise OR between 2 tensors. | ANEURALNETWORKS_LOGICAL_OR | NEBitwiseOr | All |
src | dst
--- | ---
U8 | U8
CLBitwiseOr | All |
src | dst
--- | ---
U8 | U8
BitwiseXor | Function to perform bitwise XOR between 2 tensors. | n/a | NEBitwiseXor | All |
src | dst
--- | ---
U8 | U8
CLBitwiseXor | All |
src | dst
--- | ---
U8 | U8
BoundingBoxTransform | Transform proposal bounding boxes to target bounding box using bounding box deltas. | n/a | NEBoundingBoxTransform | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
QASYMM16 | QASYMM8 | QASYMM16
F16 | F16 | F16
F32 | F32 | F32
CLBoundingBoxTransform | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
QASYMM16 | QASYMM8 | QASYMM16
F16 | F16 | F16
F32 | F32 | F32
Cast | Function to cast a tensor. | ANEURALNETWORKS_CAST | NECast | All |
src | dst
--- | ---
QASYMM8_SIGNED | S16, S32, F32, F16
QASYMM8 | U16, S16, S32, F32, F16
U8 | U16, S16, S32, F32, F16
U16 | U8, U32
S16 | QASYMM8_SIGNED, U8, S32
F16 | QASYMM8_SIGNED, QASYMM8, F32, S32, U8
S32 | QASYMM8_SIGNED, QASYMM8, F16, F32, U8
F32 | QASYMM8_SIGNED, QASYMM8, BFLOAT16, F16, S32, U8
CLCast | All |
src | dst
--- | ---
U8 | S8, U16, S16, U32, S32, F16, F32, QASYMM8_SIGNED, QSYMM8, QSYMM8_PER_CHANNEL, 16-bit Quantized
S8 | U8, U16, S16, U32, S32, F16, F32, QASYMM8, 16-bit Quantized
U16 | U8, S8, S16, U32, S32, F16, F32, 8-bit Quantized, QSYMM16
S16 | U8, S8, U16, U32, S32, F16, F32, 8-bit Quantized, QASYMM16
U32 | U8, S8, U16, S16, S32, F16, F32, All Quantized
S32 | U8, S8, U16, S16, U32, F16, F32, All Quantized
U64 | U8, S8, U16, S16, U32, S32, F16, F32, All Quantized
S64 | U8, S8, U16, S16, U32, S32, F16, F32, All Quantized
F16 | U8, S8, U16, S16, S32, U32, F32, All Quantized
F32 | U8, S8, U16, S16, S32, U32, F16, All Quantized
QASYMM8 | S8, U16, S16, U32, S32, F16, F32, QASYMM8_SIGNED, QSYMM8, QSYMM8_PER_CHANNEL, 16-bit Quantized
QASYMM8_SIGNED | U8, U16, S16, U32, S32, F16, F32, QASYMM8, 16-bit Quantized
QSYMM8 | U8, U16, S16, U32, S32, F16, F32, QASYMM8, 16-bit Quantized
QSYMM8_PER_CHANNEL | U8, U16, S16, U32, S32, F16, F32, 16-bit Quantized
QASYMM16 | U8, S8, U16, U32, S32, F16, F32, 8-bit Quantized, QSYMM16
QSYMM16 | U8, S8, U16, U32, S32, F16, F32, 8-bit Quantized, QASYMM16
ChannelShuffleLayer | Function to shuffle the channels of the input tensor. | ANEURALNETWORKS_CHANNEL_SHUFFLE | NEChannelShuffleLayer | NCHW NHWC |
src | dst
--- | ---
All | All
CLChannelShuffleLayer | NCHW NHWC |
src | dst
--- | ---
All | All
Comparison | Function to compare 2 tensors. | ANEURALNETWORKS_EQUAL ANEURALNETWORKS_GREATER ANEURALNETWORKS_GREATER_EQUAL ANEURALNETWORKS_LESS ANEURALNETWORKS_LESS_EQUAL ANEURALNETWORKS_NOT_EQUAL | CLComparison | All |
src0 | src1 | dst
--- | --- | ---
All | All | U8
ConcatenateLayer | Function to concatenate tensors along a given axis. | ANEURALNETWORKS_CONCATENATION | NEConcatenateLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLConcatenateLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
ConvertFullyConnectedWeights | Function to transpose the weights for the fully connected layer. | n/a | NEConvertFullyConnectedWeights | NHWC NCHW |
src | dst
--- | ---
All | All
CLConvertFullyConnectedWeights | NHWC NCHW |
src | dst
--- | ---
All | All
ConvolutionLayer | Function to compute a convolution layer. | ANEURALNETWORKS_CONV_2D | NEConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QASYMM8_SIGNED | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
CLConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
Conv3D | Function to compute a 3d convolution layer. | ANEURALNETWORKS_CONV_3D | NEConv3D | NDHWC |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
CLConv3D | NDHWC |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
Copy | Function to copy a tensor. | n/a | NECopy | All |
src | dst
--- | ---
All | All
CLCopy | All |
src | dst
--- | ---
All | All
Crop | Performs a copy of input tensor to the output tensor. | n/a | CLCrop | NHWC |
src | dst
--- | ---
All | F32
CropResize | Function to perform cropping and resizing. | n/a | NECropResize | NHWC |
src0 | src1 | src2 | dst
--- | --- | --- | ---
All | F32 | F32 | F32
CLCropResize | NHWC |
src0 | src1 | src2 | dst
--- | --- | --- | ---
All | F32 | F32 | F32
DeconvolutionLayer | Function to compute a deconvolution or transpose convolution. | ANEURALNETWORKS_TRANSPOSE_CONV_2D | NEDeconvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
CLDeconvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
DeconvolutionLayerUpsample | Function to execute deconvolution upsample on OpenCL. | ANEURALNETWORKS_TRANSPOSE_CONV_2D | CLDeconvolutionLayerUpsample | NHWC NCHW |
src | dst
--- | ---
All | All
DepthConvertLayer | Performs a down-scaling depth conversion. | n/a | NEDepthConvertLayer | All |
src | dst
--- | ---
QASYMM8 | F16, F32
U8 | U16, S16, S32
U16 | U8, U32
S16 | U8, S32
BFLOAT16 | F32
F16 | QASYMM8, F32
F32 | QASYMM8, F16, BFLOAT16
CLDepthConvertLayer | All |
src | dst
--- | ---
U8 | S8, U16, S16, U32, S32, F16, F32
U16 | U8, S8, S16, U32, S32, F16, F32
S16 | U8, S8, U16, U32, S32, F16, F32
U32 | U8, S8, U16, S16, S32, F16, F32
S32 | U8, S8, U16, S16, U32, F16, F32
F16 | U8, S8, U16, S16, U32, F32
F32 | U8, S8, U16, S16, U32, F16
DepthToSpaceLayer | Depth to Space transformation. | ANEURALNETWORKS_DEPTH_TO_SPACE | NEDepthToSpaceLayer | NHWC NCHW |
src | dst
--- | ---
All | All
CLDepthToSpaceLayer | NHWC NCHW |
src | dst
--- | ---
All | All
DepthwiseConvolutionLayer | Function to perform depthwise separable convolution. | ANEURALNETWORKS_DEPTHWISE_CONV_2D | NEDepthwiseConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
CLDepthwiseConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
DequantizationLayer | Function to dequantize the values in a tensor. | ANEURALNETWORKS_DEQUANTIZE | NEDequantizationLayer | All |
src | dst
--- | ---
QASYMM8 | F16, F32
QASYMM8_SIGNED | F16, F32
QSYMM8_PER_CHANNEL | F16, F32
QSYMM8 | F16, F32
QSYMM16 | F16, F32
CLDequantizationLayer | All |
src | dst
--- | ---
QASYMM8 | F16, F32
QASYMM8_SIGNED | F16, F32
QSYMM8_PER_CHANNEL | F16, F32
QSYMM8 | F16, F32
QSYMM16 | F16, F32
DetectionPostProcessLayer | Function to generate the detection output based on center size encoded boxes, class prediction and anchors by doing non maximum suppression (NMS). | ANEURALNETWORKS_DETECTION_POSTPROCESSING | NEDetectionPostProcessLayer | All |
src0 - src2 | dst0 - dst3
--- | ---
QASYMM8 | F32
QASYMM8_SIGNED | F32
F32 | F32
DirectConvolutionLayer | Function to compute direct convolution. | ANEURALNETWORKS_CONV_2D | NEDirectConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
CLDirectConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
DirectDeconvolutionLayer | Function to run the deconvolution layer. | ANEURALNETWORKS_TRANSPOSE_CONV_2D | CLDirectDeconvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
ElementwiseOperations | Function to perform in Cpu: - Div - Max - Min - Pow - SquaredDiff - Comparisons (Equal, greater, greater_equal, less, less_equal, not_equal) Function to perform in CL: - Add - Sub - Div - Max - Min - Pow - SquaredDiff | ANEURALNETWORKS_MAXIMUM ANEURALNETWORKS_MINIMUM ANEURALNETWORKS_POW ANEURALNETWORKS_DIV ANEURALNETWORKS_ADD ANEURALNETWORKS_SUB ANEURALNETWORKS_EQUAL ANEURALNETWORKS_GREATER ANEURALNETWORKS_GREATER_EQUAL ANEURALNETWORKS_LESS ANEURALNETWORKS_LESS_EQUAL ANEURALNETWORKS_NOT_EQUAL | NEElementwiseMax | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
S32 | S32 | S32
S16 | S16 | S16
F16 | F16 | F16
F32 | F32 | F32
NEElementwiseMin | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
S32 | S32 | S32
S16 | S16 | S16
F16 | F16 | F16
F32 | F32 | F32
NEElementwiseSquaredDiff | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
S32 | S32 | S32
S16 | S16 | S16
F16 | F16 | F16
F32 | F32 | F32
NEElementwiseDivision | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
NEElementwisePower | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
NEElementwiseComparison | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | U8
QASYMM8_SIGNED | QASYMM8_SIGNED | U8
S32 | S32 | U8
U8 | U8 | U8
S16 | S16 | U8
F16 | F16 | U8
F32 | F32 | U8
CLArithmeticAddition | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
U8 | U8 | S16
U8 | S16 | S16
S16 | U8 | S16
S16 | S16 | S16
S32 | S32 | S32
F16 | F16 | F16
F32 | F32 | F32
CLArithmeticSubtraction | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
U8 | U8 | S16
U8 | S16 | S16
S16 | U8 | S16
S16 | S16 | S16
S32 | S32 | S32
F16 | F16 | F16
F32 | F32 | F32
CLArithmeticDivision | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
CLElementwiseMax | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
S16 | S16 | S16
S32 | S32 | S32
U32 | U32 | U32
F16 | F16 | F16
F32 | F32 | F32
CLElementwiseMin | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
S16 | S16 | S16
S32 | S32 | S32
U32 | U32 | U32
F16 | F16 | F16
F32 | F32 | F32
CLElementwiseSquaredDiff | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
U8 | U8 | U8
S16 | S16 | S16
F16 | F16 | F16
F32 | F32 | F32
CLElementwisePower | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
ElementwiseUnaryLayer | Function to perform: - Rsqrt - Exp - Neg - Log - Abs - Round - Sin | ANEURALNETWORKS_ABS ANEURALNETWORKS_EXP ANEURALNETWORKS_LOG ANEURALNETWORKS_NEG ANEURALNETWORKS_RSQRT ANEURALNETWORKS_SIN | NEElementwiseUnaryLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
S32 | S32
CLRsqrtLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
CLExpLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
CLNegLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
S32 | S32
CLSinLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
CLLogLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
CLAbsLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
CLRoundLayer | All |
src | dst
--- | ---
F16 | F16
F32 | F32
FFT1D | Fast Fourier Transform 1D. | n/a | NEFFT1D | All |
src | dst
--- | ---
F32 | F32
CLFFT1D | All |
src | dst
--- | ---
F32 | F32
F16 | F16
FFT2D | Fast Fourier Transform 2D. | n/a | NEFFT2D | All |
src | dst
--- | ---
F32 | F32
CLFFT2D | All |
src | dst
--- | ---
F32 | F32
F16 | F16
FFTConvolutionLayer | Fast Fourier Transform Convolution. | ANEURALNETWORKS_CONV_2D | NEFFTConvolutionLayer | All |
src | dst
--- | ---
F32 | F32
CLFFTConvolutionLayer | All |
src | dst
--- | ---
F32 | F32
F16 | F16
Fill | Set the values of a tensor with a given value. | ANEURALNETWORKS_FILL | NEFill | All |
src | dst
--- | ---
All | All
CLFill | All |
src | dst
--- | ---
All | All
FillBorder | Function to fill the borders within the XY-planes. | n/a | NEFillBorder | All |
src | dst
--- | ---
All | All
FlattenLayer | Reshape a tensor to be 1D | ANEURALNETWORKS_RESHAPE | NEFlattenLayer | All |
src | dst
--- | ---
All | All
CLFlattenLayer | All |
src | dst
--- | ---
All | All
Floor | Round the value to the lowest number. | ANEURALNETWORKS_FLOOR | NEFloor | All |
src | dst
--- | ---
F32 | F32
F16 | F16
CLFloor | All |
src | dst
--- | ---
F32 | F32
F16 | F16
FullyConnectedLayer | Function to perform a fully connected / dense layer. | ANEURALNETWORKS_FULLY_CONNECTED | NEFullyConnectedLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
CLFullyConnectedLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
FuseBatchNormalization | Function to fuse the batch normalization node to a preceding convolution node. | n/a | NEFuseBatchNormalization | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
CLFuseBatchNormalization | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
Gather | Performs the Gather operation along the chosen axis. | ANEURALNETWORKS_GATHER | NEGather | All |
src | dst
--- | ---
All | All
CLGather | All |
src | dst
--- | ---
All | All
GEMM | General Matrix Multiplication. | n/a | NEGEMM | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F32 | F32 | F32 | F32
F16 | F16 | F16 | F16
BFLOAT16 | BFLOAT16 | BFLOAT16 | BFLOAT16
CLGEMM | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F32 | F32 | F32 | F32
F16 | F16 | F16 | F16
GEMMConv2d | General Matrix Multiplication. | ANEURALNETWORKS_CONV_2D | NEGEMMConv2d | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
BFLOAT16 | BFLOAT16 | BFLOAT16 | BFLOAT16
GEMMConvolutionLayer | General Matrix Multiplication. | ANEURALNETWORKS_CONV_2D | NEGEMMConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
BFLOAT16 | BFLOAT16 | BFLOAT16 | BFLOAT16
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
CLGEMMConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
GEMMDeconvolutionLayer | General Matrix Multiplication. | ANEURALNETWORKS_TRANSPOSE_CONV_2D | CLGEMMDeconvolutionLayer | NHWC |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
GEMMLowpMatrixMultiplyCore | General Matrix Multiplication. | n/a | NEGEMMLowpMatrixMultiplyCore | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QASYMM8_SIGNED | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8 | QSYMM8 | S32 | QASYMM8
QASYMM8 | QASYMM8 | S32 | S32
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | S32
QASYMM8 | QSYMM8 | S32 | S32
QASYMM8 | QASYMM8_SIGNED | F32 | F32
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8 | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | S32
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | S32
QASYMM8_SIGNED | QSYMM8 | S32 | S32
QASYMM8_SIGNED | QASYMM8_SIGNED | F32 | F32
CLGEMMLowpMatrixMultiplyCore | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
QASYMM8 | QASYMM8 | S32 | QASYMM8
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | QASYMM8
QASYMM8 | QSYMM8 | S32 | QASYMM8
QASYMM8 | QASYMM8 | S32 | S32
QASYMM8 | QSYMM8_PER_CHANNEL | S32 | S32
QASYMM8 | QSYMM8 | S32 | S32
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QSYMM8 | S32 | QASYMM8_SIGNED
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | S32
QASYMM8_SIGNED | QSYMM8_PER_CHANNEL | S32 | S32
QASYMM8_SIGNED | QSYMM8 | S32 | S32
GEMMLowpOutputStage | General Matrix Multiplication. | n/a | NEGEMMLowpOutputStage | All |
src0 | src1 | dst
--- | --- | ---
S32 | S32 | QASYMM8
S32 | S32 | QASYMM8_SIGNED
S32 | S32 | QSYMM16
CLGEMMLowpOutputStage | All |
src0 | src1 | dst
--- | --- | ---
S32 | S32 | QASYMM8
S32 | S32 | QASYMM8_SIGNED
S32 | S32 | QSYMM16
GenerateProposalsLayer | Function to generate proposals for a RPN (Region Proposal Network). | ANEURALNETWORKS_GENERATE_PROPOSALS | NEGenerateProposalsLayer | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QSYMM8 | QSYMM16 | QASYMM8
CLGenerateProposalsLayer | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
QASYMM8 | QSYMM8 | QSYMM16 | QASYMM8
InstanceNormalizationLayer | Function to perform a Instance normalization on a given axis. | ANEURALNETWORKS_INSTANCE_NORMALIZATION | NEInstanceNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F16 | F16
F32 | F32
CLInstanceNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F16 | F16
F32 | F32
L2NormalizeLayer | Function to perform a L2 normalization on a given axis. | ANEURALNETWORKS_L2_NORMALIZATION | NEL2NormalizeLayer | NHWC NCHW |
src | dst
--- | ---
F16 | F16
F32 | F32
CLL2NormalizeLayer | NHWC NCHW |
src | dst
--- | ---
F16 | F16
F32 | F32
Logical | Function to perform: - Logical AND - Logical OR - Logical NOT | n/a | NELogicalAnd | All |
src0 | src1 | dst
--- | --- | ---
U8 | U8 | U8
NELogicalOr | All |
src0 | src1 | dst
--- | --- | ---
U8 | U8 | U8
NELogicalNot | All |
src | dst
--- | ---
U8 | U8
LogicalAnd | Function to perform Logical AND. | n/a | CLLogicalAnd | All |
src0 | src1 | dst
--- | --- | ---
U8 | U8 | U8
LogicalOr | Function to perform Logical OR. | n/a | CLLogicalOr | All |
src0 | src1 | dst
--- | --- | ---
U8 | U8 | U8
LogicalNot | Function to perform Logical NOT. | n/a | CLLogicalNot | All |
src | dst
--- | ---
U8 | U8
LSTMLayer | Function to perform a single time step in a Long Short-Term Memory (LSTM) layer. | ANEURALNETWORKS_LSTM | NELSTMLayer | All |
src0 - src13 | dst0 - dst3
--- | ---
F16 | F16
F32 | F32
CLLSTMLayer | All |
src0 - src13 | dst0 - dst3
--- | ---
F16 | F16
F32 | F32
LSTMLayerQuantized | Function to perform quantized LSTM (Long Short-Term Memory) | ANEURALNETWORKS_QUANTIZED_LSTM ANEURALNETWORKS_QUANTIZED_16BIT_LSTM | NELSTMLayerQuantized | All |
src0 - src8 | src9 - src12 | src13 | src14 | dst0 | dst1
--- | --- | --- | --- | --- | ---
QASYMM8 | S32 | QSYMM16 | QASYMM8 | QSYMM16 | QASYMM8
CLLSTMLayerQuantized | All |
src0 - src8 | src9 - src12 | src13 | src14 | dst0 | dst1
--- | --- | --- | --- | --- | ---
QASYMM8 | S32 | QSYMM16 | QASYMM8 | QSYMM16 | QASYMM8
MatMul | Computes a matrix multiplication in batches. | ANEURALNETWORKS_BATCH_MATMUL | NEMatMul | Any |
lhs | rhs | dst
--- | --- | ---
F32 | F32 | F32
F16 | F16 | F16
BFLOAT16 | BFLOAT16 | BFLOAT16
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QASYMM8 | QASYMM8 | QASYMM8
CLMatMul | All |
lhs | rhs | dst
--- | --- | ---
F32 | F32 | F32
F16 | F16 | F16
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QASYMM8 | QASYMM8 | QASYMM8
MaxUnpoolingLayer | Function to perform MaxUnpooling. | n/a | NEMaxUnpoolingLayer | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLMaxUnpoolingLayer | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
MeanStdDevNormalizationLayer | Function to execute mean and standard deviation normalization. | n/a | NEMeanStdDevNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
CLMeanStdDevNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
NormalizationLayer | Function to compute normalization layer. | ANEURALNETWORKS_LOCAL_RESPONSE_NORMALIZATION | NENormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
CLNormalizationLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
NormalizePlanarYUVLayer | Function to compute normalization planar YUV layer. | n/a | CLNormalizePlanarYUVLayer | NHWC NCHW |
src | dst
--- | ---
F32 | F32
F16 | F16
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
PadLayer | Function to pad a tensor. | ANEURALNETWORKS_PAD ANEURALNETWORKS_PAD_V2 | NEPadLayer | NHWC NCHW |
src | dst
--- | ---
All | All
CLPadLayer | NHWC NCHW |
src | dst
--- | ---
All | All
Permute | Function to transpose an ND tensor. | ANEURALNETWORKS_TRANSPOSE | NEPermute | NHWC NCHW |
src | dst
--- | ---
All | All
CLPermute | NHWC NCHW |
src | dst
--- | ---
All | All
PixelWiseMultiplication | Function to perform a multiplication. | ANEURALNETWORKS_MUL | NEPixelWiseMultiplication | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
QSYMM16 | QSYMM16 | S32
U8 | U8 | U8
U8 | U8 | S16
U8 | S16 | S16
S16 | U8 | S16
S16 | S16 | S16
S32 | S32 | S32
F16 | F16 | F16
F32 | F32 | F32
CLPixelWiseMultiplication | All |
src0 | src1 | dst
--- | --- | ---
QASYMM8 | QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED | QASYMM8_SIGNED
QSYMM16 | QSYMM16 | QASYMM16
QSYMM16 | QSYMM16 | S32
U8 | U8 | U8
U8 | U8 | S16
U8 | S16 | S16
S16 | U8 | S16
S16 | S16 | S16
F16 | F16 | F16
F32 | F32 | F32
S32 | S32 | S32
PoolingLayer | Function to perform pooling with the specified pooling operation. | ANEURALNETWORKS_AVERAGE_POOL_2D ANEURALNETWORKS_L2_POOL_2D ANEURALNETWORKS_MAX_POOL_2D | NEPoolingLayer | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLPoolingLayer | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
Pooling3dLayer | Function to perform pooling 3D with the specified pooling operation. | N/A | NEPooling3dLayer | NDHWC |
src | dst
--- | ---
F16 | F16
F32 | F32
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
CLPooling3dLayer | NDHWC |
src | dst
--- | ---
F16 | F16
F32 | F32
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
PReluLayer | Function to compute the activation layer with the PRELU activation function. | ANEURALNETWORKS_PRELU | NEPReluLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLPReluLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
PriorBoxLayer | Function to compute prior boxes and clip. | n/a | NEPriorBoxLayer | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
F32 | F32 | F32
CLPriorBoxLayer | NHWC NCHW |
src0 | src1 | dst
--- | --- | ---
F32 | F32 | F32
QLSTMLayer | Function to perform quantized LSTM (Long Short-Term Memory). | ANEURALNETWORKS_QUANTIZED_LSTM ANEURALNETWORKS_QUANTIZED_16BIT_LSTM | NEQLSTMLayer | All |
src0 | src1 - src6 | src7 -src9 | src10 | src11 | dst0 | dst1 - dst2
--- | --- | --- | --- | --- | --- | ---
QASYMM8_SIGNED | QASYMM8 | S32 | QSYMM16 | QASYMM8_SIGNED | QSYMM16 | QASYMM8_SIGNED
CLQLSTMLayer | All |
src0 | src1 - src6 | src7 -src9 | src10 | src11 | dst0 | dst1 - dst2
--- | --- | --- | --- | --- | --- | ---
QASYMM8_SIGNED | QASYMM8 | S32 | QSYMM16 | QASYMM8_SIGNED | QSYMM16 | QASYMM8_SIGNED
QuantizationLayer | Function to perform quantization layer | ANEURALNETWORKS_QUANTIZE | NEQuantizationLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8, QASYMM8_SIGNED, QASYMM16
QASYMM8_SIGNED | QASYMM8, QASYMM8_SIGNED, QASYMM16
F16 | QASYMM8, QASYMM8_SIGNED, QASYMM16
F32 | QASYMM8, QASYMM8_SIGNED, QASYMM16
CLQuantizationLayer | All |
src | dst
--- | ---
QASYMM8 | QASYMM8, QASYMM8_SIGNED, QASYMM16
QASYMM8_SIGNED | QASYMM8, QASYMM8_SIGNED, QASYMM16
F16 | QASYMM8, QASYMM8_SIGNED, QASYMM16
F32 | QASYMM8, QASYMM8_SIGNED, QASYMM16
Range | Function to generates a sequence of numbers starting from START and extends by increments of 'STEP' up to but not including 'END'. | n/a | NERange | All |
dst
U8
S8
U16
S16
U32
S32
F16
F32
CLRange | All |
dst
U8
S8
QASYMM8
U16
S16
U32
S32
F16
F32
ReduceMean | Function to perform reduce mean operation. | ANEURALNETWORKS_MEAN | NEReduceMean | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLReduceMean | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
ReductionOperation | Function to perform reduce with the following operations - ARG_IDX_MAX: Index of the max value - ARG_IDX_MIN: Index of the min value - MEAN_SUM: Mean of sum - PROD: Product - SUM_SQUARE: Sum of squares - SUM: Sum - MIN: Min - MAX: Max | ANEURALNETWORKS_REDUCE_ALL ANEURALNETWORKS_REDUCE_ANY ANEURALNETWORKS_REDUCE_MAX ANEURALNETWORKS_REDUCE_MIN ANEURALNETWORKS_REDUCE_PROD ANEURALNETWORKS_REDUCE_SUM | NEReductionOperation | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
S32 | S32
CLReductionOperation | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
S32 | S32
ReorderLayer | Reorders a tensor to a different weights format. | n/a | NEReorderLayer | NCHW |
src | dst
--- | ---
F32 | F32
ReorgLayer | Performs a reorganization layer of input tensor to the output tensor. | n/a | NEReorgLayer | NHWC NCHW |
src | dst
--- | ---
All | All
CLReorgLayer | NHWC NCHW |
src | dst
--- | ---
All | All
ReshapeLayer | Function to reshape a tensor. | ANEURALNETWORKS_RESHAPE ANEURALNETWORKS_SQUEEZE | NEReshapeLayer | All |
src | dst
--- | ---
All | All
CLReshapeLayer | All |
src | dst
--- | ---
All | All
Reverse | Function to reverse tensor according to axis. | n/a | NEReverse | All |
src0 | src1 | dst
--- | --- | ---
All except SIZET <= 32-bits | U32, S32 | All except SIZET <= 32-bits
CLReverse | All |
src0 | src1 | dst
--- | --- | ---
All | U32, S32 | All
RNNLayer | Function to perform recurrent neural network layer. | ANEURALNETWORKS_RNN | NERNNLayer | NHWC NCHW |
src0 | src1 | src2 | src3 | dst0 | dst1
--- | --- | --- | --- | --- | ---
F16 | F16 | F16 | F16 | F16 | F16
F32 | F32 | F32 | F32 | F32 | F32
CLRNNLayer | NHWC NCHW |
src0 | src1 | src2 | src3 | dst0 | dst1
--- | --- | --- | --- | --- | ---
F16 | F16 | F16 | F16 | F16 | F16
F32 | F32 | F32 | F32 | F32 | F32
ROIAlignLayer | Function to perform ROI alignment. | ANEURALNETWORKS_ROI_ALIGN | NEROIAlignLayer | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
QASYMM8 | QASYMM16 | QASYMM8
QASYMM8_SIGNED | QASYMM16 | QASYMM8_SIGNED
CLROIAlignLayer | All |
src0 | src1 | dst
--- | --- | ---
F16 | F16 | F16
F32 | F32 | F32
QASYMM8 | QASYMM16 | QASYMM8
QASYMM8_SIGNED | QASYMM16 | QASYMM8_SIGNED
ROIPoolingLayer | Function to perform ROI pooling. | ANEURALNETWORKS_ROI_POOLING | NEROIPoolingLayer | All |
src0 | src1 | dst
--- | --- | ---
F32 | U16 | F32
QASYMM8 | U16 | QASYMM8
CLROIPoolingLayer | All |
src0 | src1 | dst
--- | --- | ---
F16 | U16 | F16
F32 | U16 | F32
QASYMM8 | U16 | QASYMM8
Scale | Function to perform resize a tensor using to interpolate: - Bilinear - Nearest neighbor | ANEURALNETWORKS_RESIZE_BILINEAR ANEURALNETWORKS_RESIZE_NEAREST_NEIGHBOR | NEScale | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
U8 | U8
S8 | S8
S16 | S16
CLScale | NHWC NCHW |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
U8 | U8
S16 | S16
Select | Function to select values from 2 tensors depending on an input tensor of booleans. | ANEURALNETWORKS_SELECT | NESelect | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
U8 | All | All | All
CLSelect | All |
src0 | src1 | src2 | dst
--- | --- | --- | ---
U8 | All | All | All
Slice | Function to perform tensor slicing. | ANEURALNETWORKS_SLICE | NESlice | All |
src | dst
--- | ---
All | All
CLSlice | All |
src | dst
--- | ---
All | All
SoftmaxLayer | Function to compute a SoftmaxLayer and a Log SoftmaxLayer. | ANEURALNETWORKS_LOG_SOFTMAX ANEURALNETWORKS_SOFTMAX | NESoftmaxLayerGeneric | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
CLSoftmaxLayerGeneric | All |
src | dst
--- | ---
QASYMM8 | QASYMM8
QASYMM8_SIGNED | QASYMM8_SIGNED
F16 | F16
F32 | F32
SpaceToBatchLayer | Function to divide a tensor spatially. | ANEURALNETWORKS_SPACE_TO_BATCH_ND | NESpaceToBatchLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
All | S32 | S32 | All
CLSpaceToBatchLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
All | S32 | S32 | All
SpaceToDepthLayer | Function to rearrange blocks of spatial data into depth. | ANEURALNETWORKS_SPACE_TO_DEPTH | NESpaceToDepthLayer | NHWC NCHW |
src | dst
--- | ---
All | All
CLSpaceToDepthLayer | NHWC NCHW |
src | dst
--- | ---
All | All
Split | Function to split a tensor along a given axis. | ANEURALNETWORKS_SPLIT | NESplit | All |
src | dst
--- | ---
All | All
CLSplit | All |
src | dst
--- | ---
All | All
StackLayer | Function to stack tensors along an axis. | n/a | NEStackLayer | All |
src | dst
--- | ---
All | All
CLStackLayer | All |
src | dst
--- | ---
All | All
StridedSlice | Function to extract a strided slice of a tensor. | ANEURALNETWORKS_STRIDED_SLICE | NEStridedSlice | All |
src | dst
--- | ---
All | All
CLStridedSlice | All |
src | dst
--- | ---
All | All
Tile | Function to construct a tensor by tiling a given tensor. | ANEURALNETWORKS_TILE | NETile | All |
src | dst
--- | ---
All | All
CLTile | All |
src | dst
--- | ---
All | All
Transpose | Function to transpose a 2D tensor. | ANEURALNETWORKS_TRANSPOSE | NETranspose | All |
src | dst
--- | ---
All | All
CLTranspose | All |
src | dst
--- | ---
All | All
Unstack | Function to unpack a rank-R tensor into rank-(R-1) tensors. | n/a | NEUnstack | All |
src | dst
--- | ---
All | All
CLUnstack | All |
src | dst
--- | ---
All | All
WinogradConvolutionLayer | Function to do Winograd Convolution. | ANEURALNETWORKS_CONV_2D | NEWinogradConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32
CLWinogradConvolutionLayer | NHWC NCHW |
src0 | src1 | src2 | dst
--- | --- | --- | ---
F16 | F16 | F16 | F16
F32 | F32 | F32 | F32

*/ } // namespace