

Tengine 支持 AML、RK NPU 第2篇-A311D
source link: https://zhuanlan.zhihu.com/p/265651398
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

背景
2020年风云变幻,原本以为嵌入式端侧 AI 芯片“大菊已定”。

但国内最大智能电视芯片厂商——晶晨半导体(Amlogic)

却在从2019年开始,陆陆续续(悄悄咪咪)发布了S905D3,A311D,C308X 等几款能覆盖边缘计算盒子、智能IPC应用场景的 AI SoC。
参数对比
先简单介绍下当前国内可满足采用 NPU方案的 IPC 或 边缘计算盒子,市场假象划分(为什么是假象,因为是通过各种道听途说,拍脑袋总结出来的,仅供参考,别对号入座,若有误导请及时斧正)。
然而最近,特殊原因导致海思的芯片供应链出现问题,大家都表示担忧。难过归难过,企业/项目/生活还是要坚持过下去的。通过奇怪的渠道从 Amlogic 的芯片池中找到了两三款临时应急方案,算是歪打正着缓解了大家的燃眉之急。
常规参数

AI 性能

从参数可以看出,Amlogic 已有芯片能够实现 Hi3519A 替代方案 的功能。
新问题
平台切换,需要成本,而内置 NPU 的 SoC 软件开发,最担心的两个地方是:
学习成本高
其实,圈圈虫入坑AI以来,尝试过端侧各种AI芯片的开发、部署工具。易用性上 Amlogic 的 Acuity-Toolkit 已经算是一线大厂水准的工具了。但是有没有更简单粗暴的方案?

早在一个月前,Tengine Lite 已经完美适配 A311D 等芯片,采用 Tengine 已有的模型格式 tmfile,仅需在原有 CPU demo 的基础上,增加2行代码,就能实现这两款芯片运行。
CPU 代码
/* load model, create tengine nn graph */ graph_t graph = create_graph(vx_context, "tengine", model_file);
NPU 代码
/* create device context */ context_t vx_context = create_context("vx", 1); /* add npu device */ add_context_device(vx_context, VXDEVICE); /* load model, create tengine nn graph */ graph_t graph = create_graph(vx_context, "tengine", model_file);
与此同时,我们支持了异构计算自适应混合精度切图,在加载模型时,将计算图切割成能运行在不同硬件后端的子图,极大增强了对各种网络模型兼容性。进一步降低了 A311D 等芯片的工程部署难度。

NPU模型精度
哎,每逢 NPU 应用,都会碰见精度问题,那怕是之前嵌入式AI芯片“大菊已定”的 NNIE,也有网络模型量化成 .wk 文件后精度翻车的案例。所以还不得不提供了量化重训练工具。
其实现在的端侧 AI NPU,量化策略大同小异(毕竟要支持全球最大的AI生态公司,要按照别人的游戏规则来)。
早在上半年疫情期间,Tengine 组的 HH 小哥哥,被关在家里,从最近模型压缩量化相关的 paper 中总结出一套组合拳,已经提前完成类似 NPU 芯片的精度补偿,同时也快速迁移到 A311D 的适配中,得到较为满意的结果。

端侧 AI 芯片量化,trick 太多,圈圈虫 也在努力推动公司进行开源/开放。欢迎大家积极关注 Tengine GitHub 社区(求 star……)
Tengine
Tengine 是 OPEN AI LAB 推出的面向 AIoT 场景 的 AI 应用开发平台,致力于解决 AIoT 产业链碎 片化问题,加速 AI 产业化落地。Tengine 专为 AIoT 场景设计,同时具有跨平台、异构调度、芯片底层加速、超轻量无依赖、完整开发移植部署工具链几大特点。Tengine 兼容多种操作系统和深度学习算法框架,简化和加速面向场景的 AI 算法在嵌入式边缘设备上快速迁移,以及实际应用部署落地。

开放的边缘AI计算框架

异构/加速-激活芯片性能

杂谈
Khadas
Khadas丨中文站 www.khadas.cn
Khadas 隶属于深圳市世野科技有限公司的开源品牌,目前是市面上能买到的最好看的 A311D SBC(大佬说不能叫开发板,应该是 Single Board Computer)。

人脸面板机(调试板)
Tengine 团队已经完成了基于 VIM3 开发板的 NPU 人脸检测相关模型适配。

Khadas VIM3(A311D) + Tengine Lite + NPU FaceDetection & Landmark
知乎视频 www.zhihu.com
IPC(调试板)
Amlogic 的 IPC 方案也又啦!太卷了……

传送门
OAID/Tengine github.com 圈圈虫:Tengine 支持 AML、RK NPU 第1篇-闲聊 zhuanlan.zhihu.com
我是 圈圈虫,一个热爱技术的中年大叔。快加入 OPEN AI LAB 开发者技术 QQ 群(829565581)来找我吧!溜了~~
入群秘令:CNN
Recommend
-
11
3 techniques to improve AML transaction monitoring strategiesOne of the most critical tasks banks face in complying with anti-money laundering (AML) regulations involves detecting suspicious activities. Banks rely on AML transaction monitorin...
-
20
鸠摩3天前本文将详细介绍在Ubuntu16.04 LTS上对OpenJDK8进行编译,为了方便大家快速搭建起OpenJDK8的调试开发环境,我还录制了对应的视频放到了B站上,大家可...
-
9
SBC serves up Amlogic’s NPU-equipped A311D with PoE and HDMI in and out Aug 11, 2021 — by Eric Brown — 118 views...
-
6
N26 Fined Almost $5M for AML Deficiencies German financial watchdog BaFin blasted online bank N26 for weak anti-money laundering (AML) controls and imposed a 4.25 million euro ($4.93 million) fine on...
-
9
This is the latest launch from OndatoSee Ondato’s previous launch →
-
8
加密货币反洗钱(AML)分析 SharkTeam 2023-02-14 20:36 摘要: AML(反洗钱)由阻止非法资金流通和洗钱的条例与法律组成。 随着加...
-
6
Why My Business Needs An AML Checks?
-
5
Support is great. Feedback is even better."Hey Hunters! 👋🏼 We're excited to announce the launch Flagright AI, a GPT-powered toolkit for AML compliance & fraud prevention teams 🕵️♀️. Would love to get your feedback and ideas below 👇...
-
8
V2EX › 问与答 nanoPi R6s(RK3588)的 NPU 是否支持 NAT 加速
-
9
Tengine 是阿里巴巴发起的 Web 服务器项目,最近 Tengine 3.0.0 正式发布。这次更新将核...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK