ARM异构集群组建与通信性能测试
1 介绍
本研究以树莓派、飞腾派、米尔海思三款ARM开发板为基础,组建计算集群,在其上运行实时性测试程序,并结合交换机实现板间通信。
2 系统编译与加载
计划在下述开发板+系统上运行编译好的ARM程序:
序号 | 开发板 | 系统 | 状况 |
---|---|---|---|
2.1 | 树莓派 | 原生Raspberry OS | |
2.2 | 树莓派 | openEuler 22.03 LTS(树莓派定制) | |
2.3 | 飞腾派 | 原生Phytium OS | 报错 - version GLIBC_2.34 not found |
2.4 | 飞腾派 | openEuler 23.09 (飞腾定制) | 报错 - no such file or directory |
2.5 | 米尔 | 预置openEuler | |
2.6 | 米尔 | openEuler 23.09 |
2.1 树莓派 + 原生Raspberry OS
串口调试方法
待测试...
2.2 树莓派 + openEuler 22.03 LTS SP3
下载镜像
烧录到SD卡
默认情况下,dd指令写入的块大小为512B。按照手册,设置参数bs=4M:
sudo dd bs=4M if=./openEuler-22.03-LTS-SP3-raspi-aarch64.img of=/dev/sdc status=progress
凡事都需仔细,of参数为sdc(写入整个扇区),如果误作sdc1(即只写入第1个扇区),则会报错,贴图为戒:
基本配置
将SD卡插入树莓派即可启动。
用户名 | root | pi |
---|---|---|
密码 | openeuler | raspberry |
基本配置:树莓派使用.md - Gitee
2.3 飞腾派 + 原生Phytium OS
串口调试方法
使用TTL线,按照白-绿-黑的顺序接到如图pin口:
2.4 飞腾派 + openEuler 23.09 (飞腾定制)
参考链接:https://www.cnblogs.com/EndPoem-ZH/p/17677090.html
2.4.1 命令行版
命令行版采取如下配置:
phytiumpi_defconfig
可以正常编译出img镜像,烧录到SD卡:
将SD卡插入读卡器,插入PC,df
查看文件系统:
zh@zh-virtual-machine:~/Work/2024-4/phytium-pi-os$ df
文件系统 1K的块 已用 可用 已用% 挂载点
...
/dev/sdb1 15377944 7840284 6734844 54% /media/zh/rootfs
文件系统为/dev/sdb1。进入images目录,将img烧录到SD卡(2.06G,实测用时1245.61 s,速度1.8 MB/s):
cd ./output/images
sudo dd if=sdcard.img of=/dev/sdb1 status=progress
实测启动时遇到如下问题:
[ 2.174565] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2) ]---
2.4.2 桌面版
桌面版采取如下配置:
phytiumpi_desktop_defconfig
很不幸,在执行了make
(make -j4
也测过),等待许久后,出现了error:
zh@ubuntu:~/Work/2024-4/phytium-pi-os$ make -j4
...
/bin/bash: 第 1 行: 776684 已杀死 PATH="/home/zh/Work/2024-4/phytium-pi-os/output/host/bin:/home/zh/Work/2024-4/phytium-pi-os/output/host/sbin:/home/zh/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin" xz -9 -C crc32 -c -T 5 /home/zh/Work/2024-4/phytium-pi-os/output/images/rootfs.tar > /home/zh/Work/2024-4/phytium-pi-os/output/images/rootfs.tar.xz
make[1]: *** [fs/tar/tar.mk:39:/home/zh/Work/2024-4/phytium-pi-os/output/images/rootfs.tar] 错误 137
make: *** [Makefile:84:_all] 错误 2
2.5 米尔 + 预置openEuler
串口调试方法
敬请期待...
2.6 米尔 + openEuler 23.09
敬请期待...
2.7 树莓派 + openEuler 22.03 LTS 交叉编译内核
参考链接:openEuler / raspberrypi - 交叉编译内核 - Gitee
安装依赖软件
需要安装flex和bison,否则报错:
sudo apt install flex bison
创建编译内核模块目录
WORKDIR
默认路径为/
,执行以下指令修改路径(路径自定义):
export WORKDIR=/home/user/Work/2024-4/raspberrypi-kernel/
收集编译结果
在终端进入raspberrypi-kernel目录,则此步骤的命令如下:
- 内核
cp ./arch/arm64/boot/Image ${WORKDIR}/output/
- 设备树文件等
cp ./arch/arm64/boot/dts/broadcom/*.dtb ${WORKDIR}/output/
mkdir ${WORKDIR}/output/overlays
cp ./arch/arm64/boot/dts/overlays/*.dtb* ${WORKDIR}/output/overlays/
3 实时性测试
4 通信测试
5 表决器
敬请期待...
标签:异构,树莓,zh,Work,集群,output,openEuler,pi,ARM From: https://www.cnblogs.com/EndPoem-ZH/p/18124223