ONNX Runtime集成KONNX
ONNX Runtime集成KONNX使能鲲鹏算子加速,本章节提供ONNX Runtime集成KONNX的方法。
KONNX不提供公开开发接口,故不作接口说明。
环境要求
适配步骤
- 请参见《ONNX Runtime 移植指南》“获取源码”章节获取ONNX Runtime源码包
- 获取ONNX Runtime的补丁文件。
- 请参见表1下载ONNX Runtime补丁文件konnx.patch。
- 将补丁文件konnx.patch上传至服务器“/path/to/ONNX_Runtime”目录下。
- 进入“/path/to/ONNX_Runtime/onnxruntime-1.19.2”目录。
1cd /path/to/ONNX_Runtime/onnxruntime-1.19.2
- 初始化仓库。
1 2 3
git init git add . git commit -m "code init"
- 合入konnx.patch补丁文件到仓库中。
1git apply ../konnx.patch
- 查看是否有如下图所示文件内容更改,若有,则合入补丁成功。
1 2
git add . git status

- 请参见《ONNX Runtime 移植指南》“编译安装源码”章节编译并安装ONNX Runtime。
适配后验证
ONNX Runtime编译安装完成后,为了对其进行运行和验证,请使用ONNX Runtime官方提供的单元测试执行程序onnxruntime_test_all。它会在CMake编译过程中自动构建,运行框架内部所有的自动化测试用例,用于验证核心算子、执行器、序列化/反序列化、模型加载、硬件加速器集成等多个模块的功能与正确性。
- 设置环境变量。
export ONNX_INTRA_NUM=6 export ONNX_INTER_NUM=6
- ONNX_INTRA_NUM:模型内部并行线程数,控制一个算子内部的多线程并行。
- ONNX_INTER_NUM:模型级并行线程数,控制多个算子之间的并发执行。
线程数可根据需要自行设置。
- 进入“/path/to/ONNX_Runtime/build/RelWithDebInfo”目录。
cd /path/to/ONNX_Runtime-1.19.2/build/RelWithDebInfo
- 执行以下命令以运行ONNX Runtime的公开UT测试onnxruntime_test_all。
./onnxruntime_test_all
回显如下,测试程序运行无报错,则完成ONNX Runtime的验证。

父主题: SRA_Inference使用说明