Coder Social home page Coder Social logo

wz1qqx / tengine Goto Github PK

View Code? Open in Web Editor NEW

This project forked from oaid/tengine

0.0 0.0 0.0 11.52 MB

Tengine is a lite, high performance, modular inference engine for embedded device

License: Apache License 2.0

Shell 0.14% C++ 48.97% Python 1.11% C 41.85% Assembly 5.27% Cuda 0.45% CMake 2.13% Batchfile 0.08%

tengine's Introduction

简体中文 | English

Tengine

GitHub license GitHub Workflow Status Test Status codecov Language grade: C/C++

简介

TengineOPEN AI LAB 主导开发,该项目实现了深度学习神经网络模型在嵌入式设备上的快速高效部署需求。为实现在众多 AIoT 应用中的跨平台部署,本项目使用 C 语言进行核心模块开发,针对嵌入式设备资源有限的特点进行了深度框架裁剪。同时采用了完全分离的前后端设计,有利于 CPU、GPU、NPU 等异构计算单元的快速移植和部署,降低评估、迁移成本。

Tengine 核心代码由 4 个模块组成:

  • device:NN Operators 后端模块,已提供 CPU、GPU、NPU 参考代码;
  • scheduler:框架核心部件,包括 NNIR、计算图、硬件资源、模型解析器的调度和执行模块;
  • operator:NN Operators 前端模块,实现 NN Operators 注册、初始化;
  • serializer:模型解析器,实现 tmfile 格式的网络模型参数解析。

架构简析

Tengine 架构

快速上手

编译

  • 快速编译 基于 cmake 实现简单的跨平台编译。

示例

  • examples 提供基础的分类、检测算法用例,根据 issue 需求持续更新。
  • 源安装 提供ubuntu系统的apt-get命令行安装和试用,目前支持x86/A311D硬件。

模型仓库

转换工具

  • 预编译版本 :提供 Ubuntu 18.04 系统上预编译好的模型转换工具;
  • 在线转换版本 :基于 WebAssembly 实现(浏览器本地转换,模型不会上传;
  • 源码编译 :建议在服务器或者PC上编译,指令如下:
    mkdir build && cd build
    cmake -DTENGINE_BUILD_CONVERT_TOOL=ON ..
    make -j`nproc`
    

量化工具

  • 源码编译:已开源量化工具源码,已支持 uint8/int8。

速度评估

  • Benchmark 基础网络速度评估工具,欢迎大家更新。

NPU Plugin

  • TIM-VX VeriSilicon NPU 使用指南。

AutoKernel Plugin

  • AutoKernel 是一个简单易用,低门槛的自动算子优化工具,AutoKernel Plugin实现了自动优化算子一键部署到 Tengine 中。

Container

Roadmap

致谢

Tengine Lite 参考和借鉴了下列项目:

License

澄清说明

  • [在线上报功能] 在线上报功能主要目的是了解Tengine的使用信息,信息用于优化和迭代Tengine,不会影响任何正常功能。该功能默认开启,如需关闭,可修改如下配置关闭:(主目录 CMakeLists.txt ) OPTION (TENGINE_ONLINE_REPORT "online report" OFF)

FAQ

技术讨论

tengine's People

Contributors

bug1989 avatar bowshotds avatar rudyfoo avatar daquexian avatar zchrissirhcz avatar feigechuanshu avatar kalcohol avatar cccxinli avatar dependabot[bot] avatar bzhang5 avatar clovking avatar shitouren1994 avatar xiguadong avatar nihui avatar qinhj avatar cmdbug avatar addsalt8227 avatar caishanli avatar shaoeric avatar sunnycase avatar youlucky87 avatar zjd1988 avatar mlbo avatar crouchggj avatar liqi-c avatar gdh1995 avatar youdong2528 avatar ncnnnnn avatar tpoisonooo avatar jeremy-j-j avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.