Neural Network Processing Unit Operator Support
This section summarizes neural network operators supported by the SyNAP VS6x0/SL16x0 class of NPUs and accompanying software stack. For each operator type, the supported tensor types and execution engines is also documented. Designing networks that maximise the use of operators executed in the NN core will provide the best performances.
Acronym |
Description |
---|---|
NN |
Neural Network Engine |
PPU |
Parellel Processing Unit |
TP |
Tensor Processor |
asym-u8 |
asymmetric affine uint8 |
asym-i8 |
asymmetric affine int8 |
pc-sym-i8 |
per channel symmetric int8 |
fp32 |
floating point 32 bits |
fp16 |
floating point 16 bits |
h |
half |
int16 |
int16 |
int32 |
int32 |
Note
int16 dynamic fixed point convolution is supported by NN Engine in their multiplication. Other layers follow the tables, if asym-u8 in not available in NN column, int16 is also not available.
Basic Operations
Tensor Types |
Execution Engine |
|||||
---|---|---|---|---|---|---|
Operator |
Input |
Kernel |
Output |
NN |
TP |
PPU |
CONV2D |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
CONV1D |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
DECONVOLUTION |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
DECONVOLUTION1D |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
GROUPED_CONV2D |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
Note
convolutions are executed in the NN emgine only if they satisfy the following conditions: stride == 1, kernel_size <= 15x15, dilation size + kernel size <= 15x15 If any of these conditions is not satisfied, the convolution will require support of the TP core and will run considerably slower
Tensor Types |
Execution Engine |
|||||
---|---|---|---|---|---|---|
Operator |
Input |
Kernel |
Output |
NN |
TP |
PPU |
FULLY_CONNECTED |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
fp32 |
✓ |
Activation Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
ELU |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
✓ |
||
fp16 |
fp16 |
✓ |
✓ |
||
HARD_SIGMOID |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
✓ |
||
fp16 |
fp16 |
✓ |
✓ |
||
SWISH |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LEAKY_RELU |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
PRELU |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
RELU |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
RELUN |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
RSQRT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SIGMOID |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SOFTRELU |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SQRT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
TANH |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
ABS |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
CLIP |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
||
EXP |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LOG |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
||
NEG |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
||
MISH |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
SOFTMAX |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LOG_SOFTMAX |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SQUARE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SIN |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LINEAR |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
ERF |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
||
GELU |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
Elementwise Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
ADD |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SUBTRACT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
MULTIPLY |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
DIVIDE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
MAXIMUM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
MINIMUM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
POW |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
FLOORDIV |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
MATRIXMUL |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
RELATIONAL_OPS |
asym-u8 |
bool8 |
✓ |
||
asym-i8 |
bool8 |
✓ |
|||
fp32 |
bool8 |
✓ |
|||
fp16 |
bool8 |
✓ |
|||
bool8 |
bool8 |
✓ |
|||
LOGICAL_OPS |
bool8 |
bool8 |
✓ |
||
LOGICAL_NOT |
bool8 |
bool8 |
✓ |
||
SELECT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
bool8 |
bool8 |
✓ |
|||
ADDN |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Normalization Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
BATCH_NORM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LRN2 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
L2_NORMALIZE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
LAYER_NORM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
INSTANCE_NORM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
BATCHNORM_SINGLE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
MOMENTS |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
GROUP_NORM |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Reshape Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
EXPAND_BROADCAST |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SLICE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SPLIT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
CONCAT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
STACK |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
UNSTACK |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
RESHAPE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SQUEEZE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
PERMUTE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
REORG |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SPACE2DEPTH |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
DEPTH2SPACE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
bool8 |
bool8 |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
BATCH2SPACE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SPACE2BATCH |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
PAD |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
REVERSE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
STRIDED_SLICE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
REDUCE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
ARGMAX |
asym-u8 |
asym-u8 / int16 / int32 |
✓ |
||
asym-i8 |
asym-u8 / int16 / int32 |
✓ |
|||
fp32 |
int32 |
✓ |
|||
fp16 |
asym-u8 / int16 / int32 |
✓ |
|||
ARGMIN |
asym-u8 |
asym-u8 / int16 / int32 |
✓ |
||
asym-i8 |
asym-u8 / int16 / int32 |
✓ |
|||
fp32 |
int32 |
✓ |
|||
fp16 |
asym-u8 / int16 / int32 |
✓ |
|||
SHUFFLECHANNEL |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
RNN Operations
Tensor Types |
Execution Engine |
|||||
---|---|---|---|---|---|---|
Operator |
Input |
Kernel |
Output |
NN |
TP |
PPU |
LSTMUNIT_OVXLIB |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
✓ |
||
CONV2D_LSTM |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
CONV2D_LSTM_CELL |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
|||
LSTM_OVXLIB |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
✓ |
Tensor Types |
Execution Engine |
|||||
---|---|---|---|---|---|---|
Operator |
Input |
Kernel |
Output |
NN |
TP |
PPU |
GRUCELL_OVXLIB |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
✓ |
||
GRU_OVXLIB |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
✓ |
||
SVDF |
asym-u8 |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
pc-sym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
fp16 |
✓ |
✓ |
Pooling Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
POOL |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
ROI_POOL |
asym-u8 |
asym-u8 |
✓ |
✓ |
|
asym-i8 |
asym-i8 |
✓ |
✓ |
||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
✓ |
||
POOLWITHARGMAX |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
UPSAMPLE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Miscellaneous Operations
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
PROPOSAL |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
VARIABLE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
DROPOUT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
RESIZE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
DATACONVERT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
FLOOR |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
EMBEDDING_LOOKUP |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
GATHER |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
GATHER_ND |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SCATTER_ND |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
GATHER_ND_UPDATE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
TILE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
ELTWISEMAX |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
SIGNAL_FRAME |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
CONCATSHIFT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
UPSAMPLESCALE |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
ROUND |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
CEIL |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
Tensor Types |
Execution Engine |
||||
---|---|---|---|---|---|
Operator |
Input |
Output |
NN |
TP |
PPU |
SEQUENCE_MASK |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
REPEAT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
ONE_HOT |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |
|||
CAST |
asym-u8 |
asym-u8 |
✓ |
||
asym-i8 |
asym-i8 |
✓ |
|||
fp32 |
fp32 |
✓ |
|||
fp16 |
fp16 |
✓ |