一、本地编译环境
1、安装编译 kernel 的工具
apt install git gcc make flex bison libssl-dev lz4
apt install python pip
2、scp 本机的 .ssh 文件夹到板端,然后 git clone kernel 代码
3、编译代码
make ARCH=arm64 rockchip_linux_defconfig
time make ARCH=arm64 rk3588-xxx.img -j16
二、分布式编译环境
1、安装 C/C++ 分布式编译工具
apt install distcc distccmon-gnome
2、修改服务器端和客户端的 /etc/default/distcc 配置
STARTDISTCC="true" #开机自启动
ALLOWENDETS="127.0.0.1 192.168.31.0/24" #192.168.31.xxx为RK3588的IP 地址
LISTENER=""
ZEROCONFIG="false"
3、在服务器端和客户端启动 distccd 服务:
/etc/init.d/distcc stop
/etc/init.d/distcc start
4、在客户端设置服务器端IP地址(.19为客户端IP地址,distcc部署允许localhost作为服务器端)
export DISTCC_HOSTS="192.168.31.19 192.168.31.251 192.168.31.100"
5、在客户端编译代码
make ARCH=arm64 rockchip_linux_defconfig
time make ARCH=arm64 rk3588-xxx.img -j32 CC="distcc /usr/bin/gcc"
三、编译测试结果
对于 分布式RK3588 编译 的场景,粗略手动调整编译服务端的负载均衡之后,干净编译 RK3588 的 kernel 生成 30M 的内核 Image 的耗时如下
time | RK3588 | 分布式 RK3588 x1 | 分布式 RK3588 x2 | 分布式 RK3588 x3 | i7-1165G7@2.80G | 服务器 E5-2640@2.4G |
real | 8m41.081s | 8m31.613s | 5m0.604s | 3m47.136s | 6m24.822s | 3m35.845s |
user | 56m35.906s | 56m56.541s | 24m55.459s | 15m7.921s | 44m3.944s | 57m57.281s |
sys | 6m7.484s | 5m49.619s | 4m5.039 | 3m5.729s | 3m5.943s |
4m12.297s |
RK3588性能强大
RK3588 是一颗高性能、低功耗的应用处理器芯片,由 4 个 Cortex-A76 和 4 个 Cortex-A55 及独立的NEON 协处理器集成,适用于 ARM PC、边缘计算、个人移动互联网设备和其它多媒体产品。
RK3588 内置了多种功能强大的嵌入式硬件引擎,为高端应用提供了优异的性能,支持 8K@60fps 的H.265 和 VP9 解码器、8k@30fps 的 H.264 解码器和 4K@60fps 的 AV1 解码器;还支持 8K@30fps 的 H.264和 H.265 编码器,高质量的 JPEG 编码器/解码器,专门的图像预处理器和后处理器。
内置 3D GPU,能够完全兼容 OpenGL ES1.1/2.0/3.2、OpenCL 2.2 和 Vulkan 1.2。带有 MMU 的特殊 2D硬件引擎将最大限度地提高显示性能,并提供流畅的操作体验。
引入了新一代完全基于硬件的最大 48M 像素 ISP(图像信号处理器),它实现了很多算法加速器,如HDR、3A、LSC、3DNR、2DNR、锐化、去雾、鱼眼校正、伽马校正等。
内嵌的 NPU 支持 INT4/INT8/INT16/FP16 混合运算,算力高达 6TOP。此外,凭借其强大的兼容性,可以轻松转换基于 TensorFlow/MXNet/PyTorch/Caffe 等一系列框架的网络模型。
RK3588 具有高性能的 4 通道外部存储器接口(LPDDR4/LPDDR4X/LPDDR5),能够支持苛刻的存储器带宽(能够支持存储器高带宽要求的系统),还提供了一套完整的外设接口,以灵活支持各类应用。
全部0条评论
快来发表一下你的评论吧 !