中華NPUボード ONNX演算子サポート状況比較
はじめに
本ドキュメントは、中国メーカー製のNPU(Neural Processing Unit)搭載ボードにおけるONNX演算子のサポート状況をまとめた比較資料です。エッジAI開発において、モデルのデプロイ先となるハードウェアがどの演算子をサポートしているかを把握することは、モデル設計や変換作業において非常に重要です。
対象ボード一覧
本比較では、以下の5種類のNPUボードを対象としています。
| ボード名 |
メーカー |
NPU構成 |
演算性能 |
| AX650N |
AXERA |
3コア |
18 TOPS |
| AX620E |
AXERA |
2コア |
3.2 TOPS |
| RK3588 |
Rockchip |
3コア |
6 TOPS |
| RDK X3 |
D-Robotics (Sunrise) |
2コア |
5 TOPS |
| RDK X5 |
D-Robotics (Sunrise) |
2コア(推定) |
10 TOPS |
各ボードの特徴
AXERA AX650Nは、18TOPSの高い演算性能を持ち、LayerNormalization、GroupNormalization、RMSNormalizationなど、Transformer系モデルで使用される正規化演算子を幅広くサポートしています。LLM(大規模言語モデル)向けのRotaryEmbeddingにも対応している点が特徴的です。
AXERA AX620Eは、AX650Nの廉価版という位置づけで、基本的な演算子はサポートしていますが、GatherND、ScatterElements、Tileなど一部の高度な演算子は非対応となっています。
Rockchip RK3588は、汎用性の高いSoCで、QuantizeLinear/DequantizeLinearなどの量子化関連演算子をNPUでサポートしている点が特徴です。また、制御フロー演算子(If)にも対応しています。
D-Robotics RDK X3は、多くの演算子がCPUフォールバックとなりますが、基本的なCNN演算子(Conv、Pool、BatchNormalizationなど)はBPU(Brain Processing Unit)で実行可能です。
D-Robotics RDK X5は、RDK X3の後継機で、NPU性能が向上しています。三角関数系(Sin、Cos、Tan、Asin、Acos、Atan等)の演算子サポートが充実しており、数学的な処理を含むモデルに適しています。
ONNX演算子サポート状況
表の見方
-
○: NPU/BPUで実行可能(ハードウェアアクセラレーション対応)
-
CPU: CPUで実行可能(RDKシリーズで確認済み、他のボードは不明)
-
×: 非対応
NPUで実行可能な演算子は高速に処理されますが、CPUフォールバックとなる演算子はパフォーマンスが低下する可能性があります。モデル全体のレイテンシを最小化するためには、ターゲットボードでNPU実行可能な演算子を中心にモデルを構成することが推奨されます。
演算子対応状況比較表
算術演算子
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Abs |
○ |
○ |
× |
CPU |
○ |
| Add |
○ |
○ |
○ |
○ |
○ |
| Sub |
○ |
○ |
○ |
CPU |
○ |
| Mul |
○ |
○ |
○ |
○ |
○ |
| Div |
○ |
○ |
○ |
○ |
○ |
| Neg |
× |
× |
× |
CPU |
CPU |
| Pow |
○ |
○ |
○ |
○ |
○ |
| Sqrt |
○ |
○ |
○ |
○ |
○ |
| Reciprocal |
× |
× |
× |
○ |
○ |
| Max |
○ |
○ |
○ |
CPU |
○ |
| Min |
○ |
○ |
○ |
CPU |
○ |
| Mean |
× |
× |
× |
× |
○ |
| Sum |
× |
× |
× |
○ |
○ |
三角関数・双曲線関数
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Sin |
○ |
○ |
○ |
○ |
○ |
| Cos |
○ |
× |
○ |
○ |
○ |
| Tan |
× |
× |
× |
CPU |
○ |
| Asin |
× |
× |
× |
CPU |
○ |
| Acos |
× |
× |
× |
CPU |
○ |
| Atan |
× |
× |
× |
CPU |
○ |
| Sinh |
× |
× |
× |
CPU |
○ |
| Cosh |
× |
× |
× |
CPU |
○ |
| Tanh |
○ |
○ |
○ |
○ |
○ |
| Asinh |
× |
× |
× |
CPU |
○ |
| Acosh |
× |
× |
× |
CPU |
○ |
| Atanh |
× |
× |
× |
CPU |
○ |
活性化関数
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Relu |
○ |
○ |
○ |
○ |
○ |
| Sigmoid |
○ |
○ |
○ |
○ |
○ |
| Softmax |
○ |
○ |
○ |
○ |
○ |
| LogSoftmax |
○ |
× |
○ |
CPU |
CPU |
| LeakyRelu |
○ |
○ |
○ |
○ |
○ |
| PRelu |
○ |
○ |
○ |
○ |
○ |
| Elu |
○ |
○ |
○ |
CPU |
○ |
| Selu |
× |
× |
× |
CPU |
○ |
| HardSigmoid |
○ |
○ |
○ |
CPU |
○ |
| HardSwish |
○ |
○ |
○ |
× |
× |
| Softplus |
○ |
○ |
○ |
○ |
○ |
| Softsign |
× |
× |
× |
CPU |
○ |
| ThresholdedRelu |
× |
× |
× |
CPU |
CPU |
| Celu |
× |
× |
× |
× |
× |
| Gelu |
○ |
○ |
× |
× |
× |
| Mish |
○ |
○ |
○ |
× |
× |
| Swish |
○ |
○ |
× |
× |
× |
畳み込み・プーリング
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Conv |
○ |
○ |
○ |
○ |
○ |
| ConvTranspose |
○ |
○ |
○ |
○ |
○ |
| AveragePool |
○ |
○ |
○ |
○ |
○ |
| MaxPool |
○ |
○ |
○ |
○ |
○ |
| GlobalAveragePool |
○ |
○ |
○ |
○ |
○ |
| GlobalMaxPool |
○ |
○ |
○ |
○ |
○ |
| GlobalLpPool |
× |
× |
× |
CPU |
CPU |
| LpPool |
× |
× |
× |
CPU |
CPU |
| MaxUnpool |
× |
× |
○ |
× |
× |
| MaxRoiPool |
× |
× |
○ |
× |
CPU |
正規化
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| BatchNormalization |
○ |
○ |
○ |
○ |
○ |
| InstanceNormalization |
○ |
○ |
○ |
CPU |
CPU |
| LayerNormalization |
○ |
○ |
○ |
× |
× |
| GroupNormalization |
○ |
× |
× |
× |
× |
| LpNormalization |
○ |
○ |
○ |
CPU |
CPU |
| MeanVarianceNormalization |
× |
× |
○ |
× |
× |
| RMSNormalization |
○ |
× |
× |
× |
× |
テンソル操作
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Reshape |
○ |
○ |
○ |
CPU |
○ |
| Transpose |
○ |
○ |
○ |
CPU |
○ |
| Flatten |
○ |
○ |
○ |
CPU |
○ |
| Squeeze |
○ |
○ |
○ |
○ |
○ |
| Unsqueeze |
○ |
○ |
○ |
○ |
○ |
| Concat |
○ |
○ |
○ |
○ |
○ |
| Split |
○ |
○ |
○ |
○ |
○ |
| Slice |
○ |
○ |
○ |
○ |
○ |
| Gather |
○ |
○ |
○ |
CPU |
○ |
| GatherElements |
○ |
× |
○ |
CPU |
○ |
| GatherND |
○ |
× |
× |
× |
CPU |
| ScatterElements |
○ |
× |
× |
CPU |
CPU |
| ScatterND |
○ |
× |
○ |
CPU |
CPU |
| Tile |
○ |
× |
○ |
CPU |
○ |
| Expand |
○ |
○ |
○ |
CPU |
○ |
| Pad |
○ |
○ |
○ |
○ |
○ |
| Resize |
○ |
○ |
○ |
○ |
○ |
| DepthToSpace |
○ |
○ |
○ |
○ |
○ |
| SpaceToDepth |
○ |
○ |
○ |
○ |
○ |
比較・論理演算
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Equal |
○ |
○ |
○ |
CPU |
○ |
| Greater |
○ |
○ |
○ |
CPU |
○ |
| Less |
○ |
○ |
○ |
CPU |
○ |
| GreaterOrEqual |
○ |
○ |
○ |
CPU |
○ |
| LessOrEqual |
○ |
○ |
○ |
CPU |
○ |
| And |
○ |
× |
○ |
× |
CPU |
| Or |
× |
× |
× |
CPU |
CPU |
| Xor |
○ |
× |
× |
× |
× |
| Not |
○ |
× |
× |
CPU |
CPU |
リダクション演算
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| ReduceMax |
○ |
○ |
○ |
CPU |
○ |
| ReduceMin |
○ |
× |
○ |
CPU |
CPU |
| ReduceMean |
○ |
○ |
○ |
○ |
○ |
| ReduceSum |
○ |
○ |
○ |
CPU |
○ |
| ReduceProd |
× |
× |
× |
CPU |
CPU |
| ReduceL1 |
× |
× |
× |
CPU |
CPU |
| ReduceL2 |
○ |
○ |
× |
CPU |
CPU |
| ReduceLogSum |
× |
× |
× |
CPU |
CPU |
| ReduceLogSumExp |
× |
× |
× |
CPU |
CPU |
| ReduceSumSquare |
× |
× |
× |
CPU |
CPU |
| ArgMax |
○ |
○ |
○ |
○ |
○ |
| ArgMin |
○ |
○ |
○ |
CPU |
○ |
数学関数
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Exp |
○ |
○ |
○ |
○ |
○ |
| Log |
× |
× |
○ |
CPU |
○ |
| Ceil |
○ |
○ |
× |
CPU |
○ |
| Floor |
○ |
× |
○ |
CPU |
○ |
| Round |
○ |
× |
× |
CPU |
○ |
| Sign |
× |
× |
× |
CPU |
○ |
| Erf |
○ |
○ |
○ |
CPU |
○ |
| IsNaN |
× |
× |
× |
× |
× |
| IsInf |
× |
× |
× |
× |
× |
RNN系
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| RNN |
× |
× |
× |
× |
× |
| LSTM |
○ |
○ |
○ |
○ |
○ |
| GRU |
× |
× |
○ |
× |
CPU |
量子化
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| QuantizeLinear |
× |
× |
○ |
CPU |
CPU |
| DequantizeLinear |
× |
× |
○ |
CPU |
CPU |
| DynamicQuantizeLinear |
× |
× |
× |
× |
× |
| QLinearConv |
× |
× |
× |
× |
× |
| QLinearMatMul |
× |
× |
× |
× |
× |
| ConvInteger |
× |
× |
× |
× |
× |
| MatMulInteger |
× |
× |
× |
× |
× |
型変換・定数
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Cast |
○ |
○ |
○ |
CPU |
CPU |
| CastLike |
× |
× |
× |
× |
× |
| Identity |
○ |
○ |
○ |
CPU |
CPU |
| Constant |
○ |
○ |
○ |
○ |
○ |
| ConstantOfShape |
○ |
○ |
○ |
○ |
○ |
| Shape |
× |
× |
○ |
× |
○ |
| Size |
× |
× |
○ |
○ |
○ |
| Range |
× |
× |
× |
CPU |
CPU |
行列演算
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| MatMul |
○ |
○ |
○ |
○ |
○ |
| Gemm |
○ |
○ |
○ |
○ |
○ |
| Einsum |
× |
× |
× |
× |
× |
その他
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| TopK |
○ |
○ |
× |
CPU |
○ |
| OneHot |
× |
× |
× |
CPU |
CPU |
| NonZero |
× |
× |
× |
CPU |
× |
| Where |
○ |
○ |
○ |
× |
CPU |
| Unique |
× |
× |
× |
× |
× |
| Clip |
○ |
○ |
○ |
○ |
○ |
| Dropout |
× |
× |
○ |
○ |
○ |
| Compress |
× |
× |
× |
× |
× |
| EyeLike |
× |
× |
○ |
CPU |
CPU |
| Hardmax |
× |
× |
× |
× |
× |
| If |
× |
× |
○ |
× |
× |
| Loop |
× |
× |
× |
× |
× |
| Scan |
× |
× |
× |
× |
× |
| Mod |
× |
× |
○ |
× |
CPU |
| CumSum |
× |
× |
× |
CPU |
CPU |
| ReverseSequence |
× |
× |
○ |
× |
CPU |
画像処理・ROI
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| GridSample |
○ |
○ |
× |
× |
○ |
| RoiAlign |
○ |
× |
○ |
CPU |
CPU |
| DeformConv |
× |
× |
× |
× |
× |
| LRN |
× |
× |
○ |
CPU |
CPU |
| Upsample (deprecated) |
× |
× |
× |
○ |
○ |
Transformer関連
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Attention |
× |
× |
× |
× |
× |
| RotaryEmbedding |
○ |
× |
× |
× |
× |
乱数・確率
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Multinomial |
× |
× |
× |
× |
× |
| RandomNormal |
× |
× |
× |
× |
× |
| RandomNormalLike |
× |
× |
× |
× |
× |
| RandomUniform |
× |
× |
× |
× |
× |
| RandomUniformLike |
× |
× |
× |
× |
× |
| Bernoulli |
× |
× |
× |
× |
× |
ビット演算
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| BitShift |
× |
× |
× |
× |
× |
| BitwiseAnd |
× |
× |
× |
× |
× |
| BitwiseOr |
× |
× |
× |
× |
× |
| BitwiseXor |
× |
× |
× |
× |
× |
| BitwiseNot |
× |
× |
× |
× |
× |
信号処理
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| DFT |
× |
× |
× |
× |
× |
| STFT |
× |
× |
× |
× |
× |
| MelWeightMatrix |
× |
× |
× |
× |
× |
| BlackmanWindow |
× |
× |
× |
× |
× |
| HammingWindow |
× |
× |
× |
× |
× |
| HannWindow |
× |
× |
× |
× |
× |
シーケンス操作
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| ConcatFromSequence |
× |
× |
× |
× |
× |
| SplitToSequence |
× |
× |
× |
× |
× |
| SequenceAt |
× |
× |
× |
× |
× |
| SequenceConstruct |
× |
× |
× |
× |
× |
| SequenceEmpty |
× |
× |
× |
× |
× |
| SequenceErase |
× |
× |
× |
× |
× |
| SequenceInsert |
× |
× |
× |
× |
× |
| SequenceLength |
× |
× |
× |
× |
× |
| SequenceMap |
× |
× |
× |
× |
× |
文字列操作
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| StringConcat |
× |
× |
× |
× |
× |
| StringSplit |
× |
× |
× |
× |
× |
| StringNormalizer |
× |
× |
× |
× |
× |
| RegexFullMatch |
× |
× |
× |
× |
× |
| TfIdfVectorizer |
× |
× |
× |
× |
× |
損失関数
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| SoftmaxCrossEntropyLoss |
× |
× |
× |
× |
× |
| NegativeLogLikelihoodLoss |
× |
× |
× |
× |
× |
Optional型
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Optional |
× |
× |
× |
× |
× |
| OptionalGetElement |
× |
× |
× |
× |
× |
| OptionalHasElement |
× |
× |
× |
× |
× |
その他(非対応)
| 演算子 |
AX650 |
AX620E |
RK3588 |
RDK X3 |
RDK X5 |
| Det |
× |
× |
× |
× |
× |
| Trilu |
× |
× |
× |
× |
× |
| Col2Im |
× |
× |
× |
× |
× |
| ImageDecoder |
× |
× |
× |
× |
× |
| CenterCropPad |
× |
× |
× |
× |
× |
| AffineGrid |
× |
× |
× |
× |
× |
| NonMaxSuppression |
× |
× |
× |
× |
× |
| TensorScatter |
× |
× |
× |
× |
× |
| Shrink |
× |
× |
× |
× |
× |
ユースケース別推奨ボード
画像分類・物体検出(CNN系モデル)
すべてのボードが基本的なCNN演算子(Conv、BatchNormalization、Pooling、Relu等)をサポートしているため、どのボードでも動作可能です。性能重視であればAX650N、コスト重視であればAX620EまたはRDK X3が適しています。
自然言語処理(Transformer系モデル)
LayerNormalizationのサポートが必要なため、AX650N、AX620E、またはRK3588が適しています。特にLLM向けのRotaryEmbeddingをサポートしているのはAX650Nのみです。
時系列処理(LSTM/GRU)
LSTMはすべてのボードでサポートされています。GRUを使用する場合はRK3588が最適です。
科学計算・数学的処理
三角関数や双曲線関数を多用するモデルの場合、RDK X5が最も広範なサポートを提供しています。
注意事項
- 本資料は各メーカーの公式ドキュメントに基づいていますが、ファームウェアやSDKのバージョンによってサポート状況が変わる可能性があります。
- 「CPU」と記載された演算子は、NPUではなくCPUで実行されるため、推論速度に影響を与える可能性があります。
- 実際のモデルをデプロイする前に、各メーカーが提供するモデル変換ツール(Pulsar2、RKNN-Toolkit2、OpenExplorer等)で変換テストを行うことを推奨します。
引用元