cfx · 2022年11月25日 · 陕西

【聆思CSK6视觉AI开发套件试用】从部署工程师和测试工程师角度体验CSK6

1.体验(baipiao)之前

作为一个精通多种移动端AI框架(TFLite、AndroidNNAPI、NeuroPilot、SNPE、Huawei HiAI Foundation、ARM周易NPU等)的高级AI框架工程师(俗称调包侠/API调用狗/部署狗),怀着忐忑的的心情申请(俗称白piao)到了CSK6开发板;

这是一款算力高达到 128 GOPS的单片机开发板。在手机算力已经20T起步的今天,128GOPS算力的单片机还是有不少的想象空间。

2.项目规划

在体验和看官方指导文档之前,首先应该利用历史的经验,提前搞下项目规划,理论上下面是1个万能调包模板:
a.直接下载(baipiao)开源经典模型,如: mobilenet、yolo等
b.下载和安装XXX模型优化/转换工具,将开源模型转成XXX自定义模型
c.下载和安装XX编译工具链(如:xx交叉编译工具链/ndk、仿真器/模拟器),使用专有的API(XX头文件、XX动态库),将XXX自定义模型进行模型加载、设置输入数据、运行和模型释放
d.观察运行时间、运行日志、运行内存
e.掏出自制的50米大刀(XX算子工具)对常用的XX个算子进行性能和精度测试
f.开工....

好了,下面系好安全带,发车了

3.体验发车

3.1 模型下载

ARM-CHINA model zoo已经整理好了100+模型,点赞!链接如下:
https://github.com/Arm-China/Model\\_zoo

3.2 模型优化工具下载

下载和安装XXX模型优化/转换工具,翻到官方文档支持:
https://docs.listenai.com/chips/600X/application/getting\\_start
转换工具? --?? 没有
开放AI能力? --?? 没有

好吧,我大意了。。。。。
开发板不支持自定义模型,仅支持固化了的2个功能:人脸识别、头肩&手势识别
(这还玩个P啊,只有2个基础功能不就相当于1个50块钱的老年机)

既然这样,那就跳过吧

3.3 上板(车)

(a). 下载和安装工具链,翻到官方文档支持:
https://docs.listenai.com/chips/600X/application/getting\\_start
看一眼,支持3个系统,但仅需要2个工具:git(正经人谁没有git呢)、 CSK6一键安装包(csk6\\_integration\\_installer\\_v1.6.5.exe)。

绝对好评(不像XX友商,只支持某个版本的Ubuntu,使用前需要注册XXX开发者社区后,下载一堆错误百出的PDF文档...)

等等....

CSK6一键安装包(csk6\\_integration\\_installer\\_v1.6.5.exe) 1.8G,太大了!
安装过程可以看出,将大量python、nodejs、arm-gcc等打包为二进制可执行程序,看来支持3个系统的秘密在这里,下面可能有几个比较严重的问题了:
(1).依赖这么多开源软件,开源软件的License列表在哪里?确定不违反开源协议?
(2).开源漏洞如何跟踪和解决?
(3).如何保证工具中的每个文件的可追溯?
(4).使用lisa命令包装git等命令,但是又没看到lisa工具的概念建模,搞得有点不伦不类

安装完成后,执行:
lisa info zep

但提示更新,更新完成后,变更记录是?可否回退呢?

(b).编译和体验helloworld
重点3条命令和115200

lisa zep create
lisa zep build -b csk6011a\\_nano
lisa zep flash

可使用串口工具查看,推荐MobaXterm,可以将编译/串口都在1个工具中完成

不过问题和槽点也有不少,如:
(1).helloworld没有提现AI,是不是应该考虑改成2个矩阵相乘?
(2).编译依赖cmake,但是工具包里是没有cmake,也没有在入门文档中写上
(3).目录名称里也不支持数字开头,如:03\_CSK\_TEST,否则有无效的错误提示:
“FATAL ERROR: CMake is not installed or cannot be found; cannot build.”

(c).编译和体验AI手势检测识别
套路和helloworld差不多,在上面3步基础上新增2步

(1)创建/下载项目
git clone https://cloud.listenai.com/zephyr/applications/app\\_algo\\_hsd\\_sample\\_for\\_csk6.git
再次更新下git内容和SDK
lisa zep init-app
lisa zep update

(2)修改配置和编译
prj.conf 文件,将 CONFIG\\_WEBUSB=n 改为CONFIG\\_WEBUSB=y
lisa zep build -b csk6011a\\_nano

(3)烧录和查看
lisa zep flash

(4)烧录资源
lisa zep exec cskburn -s .\COMx -C 6 0x400000 .\resource\cp.bin -b 748800
lisa zep exec cskburn -s .\COMx -C 6 0x500000 .\resource\res.bin -b 748800

(5)PC工具查看
工具在git项目中,nodejs开发的网页工具,实现功能相对简单,也无力吐槽了
git clone https://cloud.listenai.com/zephyr/applications/csk\\_view\\_finder\\_spd.git

4.观察运行时间、运行日志、运行内存(暂不支持)

5.50米大刀(待续)

6.总结

感谢极术社区与聆思科技给予宝贵的试用机会!
从开发板开放的功能看,缺少自定义模型推理功能和自定义算子功能,仅预制2个基础功能,可玩性比较一般,无法发挥128GOPS的性能。
从工具链角度看,将复杂的工具链安装打包到1个工具包中,简化了开发者工具安装的难度,非常方便。但是缺少必要的一些调试和仿真工具。

不过相信随着后面功能的完善和开放,该开发板将释放出AI潜力,开发板将大放异彩!

推荐阅读
关注数
5176
内容数
100
聆思科技官方专栏,专注AIOT芯片,持续分享有趣的解决方案。商务合作微信:listenai-csk 技术交流QQ群:825206462
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息