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