作为AI爱好者,希望能够在生活中嵌入AI处理辅助技术,盯上AI盒子已经很久了,但是200DK价格偏贵,NV的接口和性能不满足要求。恰巧昇腾推出了A2盒子,不管是接口还是价格,都不是一般的让人满意,还说啥呢,搞起来GOGOGO:
计划做一个家用智能NAS协处理器,能够在本地存储图片视频等资料,进行图片标记、图片提取,进行音频处理,也想结合入一些家用常见的功能,比如跌倒检测,众所周知,网络摄像头会有可能出现安全性问题,如果处理的数据使用本地局域网而不使用摄像头厂商提供的服务,其私密性会更好一点,物理隔离是最好的保护手段。
拉了一个单子,发现想做的事很多,业余的时间超少(让我哭一会)。
后面会把每一次进展都放在帖子里。
1.开箱
开箱过程很顺利,一键制卡超级好用。连线开机直接就跑起来了,用USB-C连进去后,设置rndis网卡驱动安装,然后设定地址,基本上按照教程没有碰到什么困难。从实际占用来说,感觉卡空间使用并不高:
芯片42度,如果屋里不怎么热,可以改成自动模式,风扇效果好很多,命令是:
npu-smi set- t pwm-mode
设成auto,瞬间静态声音就下去了,这个对nas很重要。
挂上串口,可以看到启动信息,似乎板载了一个boot,内部内置参数或者使用了sd卡分区0(mmcblk0p0,读取内容非可读)进行参数存储。试验了一下启动引脚,大致设计是这样的:
23 on emmc boot entry
4 on ssd boot entry
2 on SD boot entry
24on userbasecfg download模式
嗯,支持ssd启动,以后可以试试直接用硬盘来装系统,按照我之前的经验,TF卡太容易坏了。
2.环境搭建
A2 的环境很友好,conda环境、gcc、cann都自带,省了很大的功夫,jupter也很快跑起来了。
内核编译环境差得比较多,
apt install libncurses-dev
apt install flex
apt install bison
apt install bc
apt install linux-firmware
实际上群里的老师不推荐使用盒子做编译,我试了一下,问题有这些:
1)TF卡的读写速度慢
我挂了一块nvme3.0的硬盘,可以看到TF卡的速度比硬盘慢了一半,这个影响编译进度
在TF卡上解压一个A2内核,速度为:
硬盘上解压内核,速度为:
其中real是真实感受到的时间,user是用户空间时间消耗,sys是内核空间消耗。
2)目前的开发者内核是按照交叉编译来设计的,会报找不到arm-xxxx-xxxx-gcc问题,这个应该有解
3)盒子内存不足,编译性能孱弱。在PC上一般我编译内核都是十几分钟到几十分钟,在盒子上首次内核编译我居然睡着了,醒了之后发现报了个错,开发者脚本似乎不支持增量编译,又从头开始。
计划先暂停盒子编译内核,在PC上起一个环境。
3、存储单元接口
挂上NVME直接可以识别设备,我用的是光威basic 512G,M.2接口(NVMe协议) PCIe 3.0 Basic系列,fdisk 直接对dev下的nvme分区,然后mkfs.ext4,报错两次后,鼓捣过了。
效果见2中的图,
补充新消息:2023.6.28 硬盘挂了,lspci能识别主控,但是看不到盘,返修中。
4、网络接口
购买了intel AX210,目前能够识别硬件,驱动正在调测中。直接引入firmware是不能够驱动的,看资料似乎要在内核开启iwifi,正在搭建内核编译环境中。
2023.6.30更新,新到M.2转PCIE转接卡,打算先在PC上把接口打通,然后移植到A2 上。
待调测进展后继续更新。。。。
现在板子的组合状态: