RKNPU Execution Provider

VORSCHAU

Das RKNPU DDK ist eine fortschrittliche Schnittstelle für den Zugriff auf Rockchip NPU. Der RKNPU Execution Provider ermöglicht Deep Learning Inferenzen auf Rockchip NPU über das RKNPU DDK.

Inhalt

Build

Anweisungen zum Erstellen finden Sie auf der BUILD-Seite.

Verwendung

C/C++

Um RKNPU als Execution Provider für Inferenzen zu verwenden, registrieren Sie ihn wie unten gezeigt.

Ort::Env env = Ort::Env{ORT_LOGGING_LEVEL_ERROR, "Default"};
Ort::SessionOptions sf;
Ort::ThrowOnError(OrtSessionOptionsAppendExecutionProvider_RKNPU(sf));
Ort::Session session(env, model_path, sf);

Die Details der C-API finden Sie hier.

Support-Abdeckung

Unterstützte Plattform

  • RK1808 Linux

Hinweis: Die RK3399Pro-Plattform wird nicht unterstützt.

Unterstützte Operatoren

Die folgende Tabelle zeigt die ONNX-Operationen, die mit dem RKNPU Execution Provider unterstützt werden, und die Zuordnung zwischen ONNX-Operationen und RKNPU-Operationen.

ONNX Ops RKNPU Ops
Add ADD
Mul MULTIPLY
Conv CONV2D
QLinearConv CONV2D
Gemm FULLCONNECT
Softmax SOFTMAX
AveragePool POOL
GlobalAveragePool POOL
MaxPool POOL
GlobalMaxPool POOL
LeakyRelu LEAKY_RELU
Concat CONCAT
BatchNormalization BATCH_NORM
Reshape RESHAPE
Flatten RESHAPE
Squeeze RESHAPE
Unsqueeze RESHAPE
Transpose PERMUTE
Relu RELU
Sub SUBTRACT
Clip(0~6) RELU6
DequantizeLinear DATACONVERT
Clip CLIP

Unterstützte Modelle

Die folgenden Modelle aus dem ONNX Model Zoo werden mit dem RKNPU Execution Provider unterstützt

Bildklassifizierung

  • squeezenet
  • mobilenetv2-1.0
  • resnet50v1
  • resnet50v2
  • inception_v2

Objekterkennung

  • ssd
  • yolov3