18

爱笑的小姐姐 · 2020年03月17日

Tengine最新开源版本V1.12,全面提升CPU推理性能

自从Tengine 2017年底首次在GitHub尝试开放源代码,得到很多开发者的关注和肯定。2020年,为了让更多的开发者、企业使用真正可以使用AI技术去赋能场景,去创造价值, Tengine决定加速开放、开源的节奏,建设真正有吸引力的自主知识产权的开源项目,为AIoT开发者打造最佳的开发平台,赋能AIoT全产业链,Powered by Tengine!

2020年,Tengine再次升级!

更新内容

本次Tengine v1.12开源更新内容如下:

  1. 全面提升Arm CPU推理性能

a.增加Tengine Arm32 性能算子
b.更新并新增了Tengine Arm64 性能算子
c.增加卷积实现-Winograd
d.在Arm64/Arm32性能优化的基础上对Arm A72/A17进行了定制优化,进一步提高性能
全面性能数据可参考Tengine Benchmark

2.将编译方式由原先的Makefile更改为更受大家欢迎的CMake编译
3.重新制作了模型转换工具,定义了更加标准化的标准神经网络中间层描述-NNIR,同时提升了模型转换工具的使用体验
4.新增了很多ONNX的算子支持,满足大家对PyTorch日益增长的热情

1.jpg

升级更新解决三大痛点和难点

人工智能从算法向智能前端产品延伸成为显著趋势,但仅依靠纯软件形式,往往出现算法效率打折扣、落地性差的问题; 另外,而且即便是对自建AI团队的行业头部企业来说,AI应用落地的人力和资源投入都是巨大的。

这其中主要面临三大痛点和难点:
一、芯片种类多并且多是异构计算平台,选型、部署难度大
二、芯片有效算力挖掘不充分
三、 软件环境复杂:包括各种OS(Linux, Android, RTOS, Bare-Metal) 和各种深度学习框架

为了帮助客户快速高效整合产业上下游,提升算法移植/部署效能,助力加快产业链演进周期;针对AIoT行业的三大痛点和难点,Tengine交出了这样的答卷:

痛点一、芯片种类多并且多是异构计算平台,硬件复杂

解决方案:Tengine对硬件底层进行抽象,Tengine提供跨芯片平台统一API接口,底层适配主流芯片AIoT芯片如HiSilicon、 Rockchips、Amlogic等。通过统一的API接口屏蔽不同的硬件差异,通过动态调度器实现算力异构调度。(Tengine调用NPU的功能涉及到相关商业合作伙伴利益,暂无法提供源代码给开源社区开发者,希望体验的用户可以与我们联系获取:support@openailab.com)
2.png

痛点二、芯片有效算力挖掘不充分,性能阻碍场景应用落地

解决方案:尽管神经网络加速器潮流涌至,CPU的高通用性、易编程以及良好的生态仍旧是快速应用落地的首选。Tengine对CPU的性能进行深度优化,以满足苛刻的端侧神经网络推理对性能的诉求。内存管理上Tengine运行模型时,自动对内存进行优化,如申请内存池、动态释放等;推理速度上Tengine针对CPU的指令级和微架构进行算子优化,支持int8等低精度计算,支持异构的动态调度,实现2~10倍的性能提升。(int8已经有商用客户在使用,后续随着内部整理以及开发者需求逐步开放,希望体验的用户可以与我们联系获取:support@openailab.com)

3.jpg

痛点三、软件环境复杂,包括各种OS(Linux, Android, RTOS, Bare-Metal) 和各种深度学习框架

解决方案:Tengine不依赖于除C/C++以外的任何第三方库,采用模块化设计,核心模块只有几十KB大小,因此可以兼容Linux、Android、iOS、RTOS等主流边缘侧操作系统。Tengine支持将Caffe/TensorFlow/TensorFlow lite/MXNet/ONNX/Darknet等各类模型训练框架的模型转换成Tengine的标准神经网络中间层描述-NNIR,同时对模型进行图层级优化如图层融合、子图切分等。同时定义统一的应用开发接口,实现无缝兼容多种训练框架。
4.png

AI开发者是AI的“魂”,只有更多的AI开发者参与到实际的生产、生活场景开发中去,才能碰撞激发出更多优秀的创意,开源“show me the code”无疑是真正打破壁垒、凝聚广大开发者的关键因素。Tengine就希望能够通过开源为 AI 产业夯实基础,为广大的AIoT应用开发者打通算法部署到不同硬件环境的工作流,加速面向场景的AI算法在嵌入式边缘设备上快速迁移,最终实现万物智能。

欢迎AI开发者们下载Tengine v1.12,支持自主知识产权商业级别的AIoT智能开发平台,更多新功能敬请期待!

最新版Tengine产品手册请点击文末下载。

最后,我们计划会在2020年更新5次开源版本,会陆续迭代,其中四月份还将和开源世界里的社区大咖联合发布新版本,敬请关注Tengine-AI开发平台专栏!欢迎开发者朋友们投稿相关文章。如有相关问题,也可以点击此处提问.
文件名 大小 下载次数 操作
Tengine产品手册的单页展示20200313.pdf 2.17MB 11 下载
推荐阅读
关注数
3391
内容数
68
Tengine是一款轻量级模块化高性能的神经网络推理引擎 ;欢迎体验Tengine,[链接] 《Tengine开发者入门资料包》[链接]
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息