0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

中華NPUボード ONNXサポート状況

Last updated at Posted at 2025-12-01

中華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等)で変換テストを行うことを推奨します。

引用元


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?