RKNPU 执行提供者
预览
RKNPU DDK 是访问 Rockchip NPU 的高级接口。RKNPU 执行提供者通过 RKNPU DDK 实现了在 Rockchip NPU 上的深度学习推理。
目录
构建
有关构建说明,请参阅 构建页面。
用法
C/C++
要将 RKNPU 用作推理的执行提供者,请按如下方式注册它。
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);
C API 详情请见此处。
支持范围
支持的平台
- RK1808 Linux
注意:不支持 RK3399Pro 平台。
支持的操作符
下表显示了 RKNPU 执行提供者支持的 ONNX 操作符以及 ONNX 操作符和 RKNPU 操作符之间的映射。
| ONNX 操作符 | RKNPU 操作符 |
|---|---|
| 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 |
支持的模型
以下 ONNX 模型库中的模型支持使用 RKNPU 执行提供者
图像分类
- squeezenet
- mobilenetv2-1.0
- resnet50v1
- resnet50v2
- inception_v2
目标检测
- ssd
- yolov3