5. NPU Operators support list (AX637)#
This section introduces the NPU supports for the ONNX operator in AX637.
Supported ONNX opset_version >= 11. For detailed operator description, please refer to onnx Operators .
Some of the supported operators do not have standard ONNX definitions yet. If such operators are included in the model, please consult technical support.
Note
"Not supported yet": Indicates that the current version of the operator implementation does not support it, but the NPU can theoretically support it, and subsequent versions may support it.
"Unlimited": Indicates that the current operator implementation can support it. Since the test may not necessarily cover the entire parameter space, if something unexpected happens, you can give us feedback and we will treat it as a BUG and fix it as soon as possible.
"Not supported": Indicates that the implementation of this attribute cannot be supported.
Operators |
Attrs limitation |
|---|---|
Abs |
Unlimited |
Add |
Unlimited |
And |
Unlimited |
ArgMax |
- axis: Unlimited |
ArgMin |
- axis: Unlimited |
AveragePool |
- auto_pad: Only supports NOTSET |
BatchNormalization |
- epsilon: Unlimited |
Bevpool |
Unlimited |
Cast |
to:uint8/int8/uint16/int16/uint32/int32/float32 |
Ceil |
Unlimited |
Clip |
- min: Unlimited |
Concat |
axis: Unlimited |
Constant |
Unlimited |
ConstantOfShape |
Unlimited |
Conv |
- auto_pad: Only supports NOTSET |
ConvTranspose |
- auto_pad: Only supports NOTSET |
Cos |
Unlimited |
CumSum |
- exclusive: Currently only supports 0 |
DepthToSpace |
- blocksize: Unlimited |
Div |
Unlimited |
Elu |
Unlimited |
Equal |
Unlimited |
Erf |
Unlimited |
Exp |
Unlimited |
Expand |
Unlimited |
Flatten |
Unlimited |
Floor |
Unlimited |
Gather |
- axis: Unlimited |
GatherElements |
- axis: Unlimited |
GatherND |
Unlimited |
Gelu |
Unlimited |
Gemm |
- alpha: Not supported yet |
GlobalAveragePool |
Unlimited |
GlobalMaxPool |
Unlimited |
Greater |
Unlimited |
GreaterOrEqual |
Unlimited |
GridSample |
Unlimited |
GroupNormalization |
Unlimited |
HardSigmoid |
Unlimited |
HardSwish |
Unlimited |
Identity |
Unlimited |
InstanceNormalization |
epsilon:Unlimited |
InverseSigmoid |
Unlimited |
LayerNormalization |
axis: Currently only supports -1 (i.e., the last dimension) |
LeakyRelu |
Unlimited |
Less |
Unlimited |
LessOrEqual |
Unlimited |
LpNormalization |
- axis: Currently only supports -1 (i.e., the last dimension) |
LSTM |
- activation_alpha: Not supported yet |
LogSoftmax |
Unlimited |
MatMul |
Unlimited |
Max |
Unlimited |
MaxPool |
- auto_pad: Only supports setting to NOTSET |
Min |
Unlimited |
Mish |
Unlimited |
Mul |
Unlimited |
Neg |
Unlimited |
Not |
Unlimited |
Pad |
- pads: Unlimited |
Pow |
Elementwise computation is not supported, the exponent must be provided as an initializer and must be a scalar. |
PRelu |
For 4D tensor input, the channel dimension must be the second dimension, and the slope shape Currently only supports (channel,) or(1, channel, 1, 1) |
ReduceL2 |
- axes: Unlimited |
ReduceMax |
- axes: Unlimited |
ReduceMean |
- axes: Unlimited |
ReduceMin |
- axes: Unlimited |
ReduceSum |
- axes: Unlimited |
Relu |
Unlimited |
Reshape |
shape: Unlimited |
Resize |
- mode: Supported options: "nearest" and "linear" |
RMSNormalization |
Unlimited |
RoiAlign |
sampling_ratio: Only supports non-zero |
RotaryEmbedding |
Unlimited |
Round |
Unlimited |
ScatterElements |
Unlimited |
ScatterND |
Unlimited |
Sigmoid |
Unlimited |
Silu |
Unlimited |
Sin |
Unlimited |
Slice |
- starts: Unlimited |
Softmax |
axis: Unlimited |
Softplus |
Unlimited |
SpaceToDepth |
blocksize: Unlimited |
SpatialTransformer |
Interpolation mode: "bilinear", Border mode: "constant"(value is 0) |
Split |
- axis: Unlimited |
Sqrt |
Unlimited |
Squeeze |
axes: Unlimited |
Sub |
Unlimited |
Swish |
Unlimited |
Tanh |
Unlimited |
Tile |
Unlimited |
Topk |
Unlimited |
Transpose |
perm: Unlimited |
Unsqueeze |
axes: Unlimited |
Where |
Unlimited |
Xor |
Unlimited |