开源软件名称:Tengine
开源软件地址:https://gitee.com/OAL/Tengine
开源软件介绍:
简体中文 | English Tengine
简介Tengine 由 OPEN AI LAB 主导开发,该项目实现了深度学习神经网络模型在嵌入式设备上的快速、高效部署需求。为实现在众多 AIoT 应用中的跨平台部署,本项目使用 C 语言进行核心模块开发,针对嵌入式设备资源有限的特点进行了深度框架裁剪。同时采用了完全分离的前后端设计,有利于 CPU、GPU、NPU 等异构计算单元的快速移植和部署,降低评估、迁移成本。 Tengine 核心代码由 4 个模块组成: - device:NN Operators 后端模块,已提供 CPU、GPU、NPU 参考代码;
- scheduler:框架核心部件,包括 NNIR、计算图、硬件资源、模型解析器的调度和执行模块;
- operator:NN Operators 前端模块,实现 NN Operators 注册、初始化;
- serializer:模型解析器,实现 tmfile 格式的网络模型参数解析。
架构简析快速上手编译- 快速编译 基于 cmake 实现简单的跨平台编译。
示例- examples 提供基础的分类、检测算法用例,根据 issue 需求持续更新。
- 源安装 提供ubuntu系统的apt-get命令行安装和试用,目前支持x86/A311D硬件。
模型仓库转换工具- 预编译版本 :提供 Ubuntu 18.04 系统上预编译好的模型转换工具;
- 在线转换版本 :基于 WebAssembly 实现(浏览器本地转换,模型不会上传;
- 源码编译 :建议在服务器或者PC上编译,指令如下:
mkdir build && cd buildcmake -DTENGINE_BUILD_CONVERT_TOOL=ON ..make -j`nproc`
量化工具- 源码编译:已开源量化工具源码,已支持 uint8/int8。
速度评估NPU PluginAutoKernel Plugin- AutoKernel 是一个简单易用,低门槛的自动算子优化工具,AutoKernel Plugin实现了自动优化算子一键部署到 Tengine 中。
ContainerRoadmap致谢Tengine Lite 参考和借鉴了下列项目: License澄清说明- [在线上报功能] 在线上报功能主要目的是了解Tengine的使用信息,信息用于优化和迭代Tengine,不会影响任何正常功能。该功能默认开启,如需关闭,可修改如下配置关闭:(主目录 CMakeLists.txt ) OPTION (TENGINE_ONLINE_REPORT "online report" OFF)
FAQ技术讨论 |
请发表评论