【“星睿O6”AI PC开发套件评测】 Debian13 适配预览,性能对比
产品简介
瑞莎星睿 O6 (Radxa Orion O6) 是一款面向 AI 计算和多媒体应用的专业级 Mini-ITX 主板。它搭载 Cix P1 SoC(型号 CD8180),支持 最高 64GB LPDDR5 内存,在紧凑的尺寸下提供服务器级性能。Orion O6 具备丰富的 I/O 接口,包括 四路显示输出、双 5GbE 网络 和 PCIe Gen4 扩展,非常适合 AI 开发工作站、边缘计算节点 以及 高性能个人计算 应用。
CPU
Cix P1 - CD8180
• 四核大核 Cortex®-A720、四核中核 Cortex®-A720、四核小核 Cortex®-A520
• 12MB L3 共享缓存
GPU
Arm® Immortals™ G720 MC10 GPU,支持:
• 硬件光线追踪
• OpenGL® ES3.2
• OpenCL® 3.0
• Vulkan® 1.3
NPU
支持 INT4 / INT8 / INT16 / FP16 / BF16 和 TF32 加速,算力高达 28.8TOPs
支持 AV1 / H.265 / H.264 / VP9 / VP8 / H.263 / MPEG-4 / MPEG-2,最高 8K@60fps
支持 H.265 / H.264 / VP9 / VP8,最高 8K@30fps
OS
Radxa O6 支持 Debian/Ubuntu/Fedora 等多个 Linux发行版,以及 Android ,OpenHarmony 等 OS
官方支持的 Delian 版本为 Debian12,在发布时 Debian 12 属 Stable 版本,现在 Debian 13 (Trixie) 已经发布,
此次我们先来预览一下 Debian 13 在 Radxa o6 上的适配情况,以及跟 Debian 12 的性能对比 (均为 ACPI)
Debian 12 的下载安装请参考官方文档
Debian 13 的安装
适用于 Radxa o6 的 Debian 13 的官方镜像暂时未对外发布,此次我们使用 Debian 13 的官方 iso 安装,
安装使用 Gnome 桌面环境,安装后进入系统后会发现缺少 GPU ,NPU 等驱动,桌面默认使用 CPU 渲染,内核是 6.12.48-1 版本
然后下载安装对应的 Debian 13 的各种固件驱动以及官方适配的 6.6 内核(各位开发者等后续官方发布),安装后重启。
安装后重启,在 grub 界面选择使用 6.6 的内核,进入系统。
Debian 13 OS information
安装 vulkan-tools mesa-utils glmark2
sudo apt install vulkan-tools mesa-utils glmark2-wayland查看系统和内核版本
Debian 12 系统和内核版本
Debian 13 GPU驱动等相关信息
GPU 已经正常工作,OpenGL 渲染环境正常工作,Vulkan 驱动可用,Vulkan 版本 1.4,Zink 正常运行
最高支持 OpenGL 4.6,Mesa 版本是 25.1.5, 支持 OpenGL ES 3.2
支持 GLSL(着色器语言)到 4.60 / 3.20
Debian 12 GPU驱动等相关信息
Debian 13 待机功耗
Debian 12 待机功耗
Debian 13/12 性能测试对比
CPU性能对比
CPU 测试工具比较多,此次使用 7zip 来评估 CPU 性能,7zip 比较符合真实负载情况
Debian 12 7zip 总分 32634
Debian 13 7zip 总分 43114
Debian 13 的内存是 16 G,Debian 12 的是 32 G,同样的板载内存,Debian 13 的 16G 竟然远超 Debian 12 的 32G,可能跟 GCC 的编译优化和 7zip 本身版本升级优化算法有关。
GPU 性能对比:
Debian 12 glmark2 734 分
Debian 13 glmark2 924 分
VPU 编解码性能测试
o6开发板拥有一个强大的 VPU,用来编解码,主流的视频和图像格式的解码都支持,具体如下
| *格式* | *解码* | *编码* |
|---|---|---|
| *AV1* | Y | N |
| *H.264* | Y | Y |
| *HEVC* | Y | Y |
| *VP9* | Y | Y |
| *VP8* | Y | Y |
| *MPEG-4* | Y | N |
| *MPEG-2* | Y | N |
| *H.263* | Y | N |
| *JPEG/MJPEG* | Y | Y |
| *HEVC Main Still* | Y | Y |
| *格式* | *Profiles* | *最大Level* | *最大码率* | *最高分辨率* |
|---|---|---|---|---|
| *AV1* | Main (8-bit and 10-bit) | 6.1 | 400Mbps | 8192x8192 |
| *HEVC* | Main, Main10 | 6.1@high tier | 480Mbps | 8192x8192 |
| *H.264 Progressive* | Baseline, Main, High, Progressive High 10 | 6.1 | 480Mbps | 8192x8192 |
| *H.264 Interlaced* | Main, High | 5.1 | 120Mbps | 2048x4096 |
| *VP9* | Profile 0 and 2 (10-bit) | N/A | 480Mbps | 8192x8192 |
| *VP8* | N/A | N/A | 50Mbps | 2048x2048 |
| *MPEG-4 Progressive* | Simple, Advanced Simple | 5 | 50Mbps | 2048x2048 |
| *MPEG-4 Interlaced* | Advanced Simple | 5 | 50Mbps | 2048x2048 |
| *MPEG-2 Progressive* | Main | High | 50Mbps | 4096x4096 |
| *MPEG-2 Interlaced* | Main | High | 50Mbps | 2048x4096 |
| *H.263* | Profile 0 | 70 | 50Mbps | 2048x2048 |
| *JPEG/MJPEG* | YUV420 and YUV422 | N/A | 240Mbps | 32768x32768 |
| *HEVC Main Still* | Main Still | 6.1@high tier | 480Mbps | 8192x8192 |
以上所有格式解码支持的最小分辨率为144x144。
解码输出格式可以是AFBC1.2、YUV或RGB,按帧输出。使用AFBC格式可最大程度降低内存带宽、内存占用和系统功耗。
VPU 调度策略
o6 VPU 支持DFS (Dynamic Frequency Scaling),以达到降低功耗的目的,可以设置调度策略,本次测试使用默认策略,如果对性能有需要可调整至 performance 模式
· userspace:用户指定频率,频率范围 150MHz ~ 1200MHz
· performance: 以最高频率1200MHz运行。
· simple_ondemand:根据VPU的负载动态调节频率,默认使用的governor
VPU 性能工具
VPU帧率统计工具在VPU驱动内部实现,通过检测VPU message统计每个实例的实时帧率和平均帧率。最多可同时统计32个实例。
通过/sys/kernel/debug/amvx/log/group/perf/enable 比特位1控制 VPU 帧率统计开启和关闭,默认关闭,我们开启一下
echo 2 > /sys/kernel/debug/amvx/log/group/perf/enableVPU使用率监测工具基于VPU firmware log实现,在VPU驱动内部统计并计算最近一秒内的VPU占用百分比,结果通过 debugfs 打印
通过/sys/kernel/debug/amvx/log/group/perf/enable 比特位0控制VPU帧率统计开启和关闭,可以通过以下命令开启
echo 1 > /sys/kernel/debug/amvx/log/group/perf/enable这里测试一下日常使用较多的 h264 h265(hevc) 格式的解码性能
Debian 12 h264 解码
mvx_decoder -f raw -i h264 -o yuv420_nv12 ./Ducks.Take.Off.2160p.QHD.CRF25.x264-CtrlHD.h264 test.yuv > /dev/null对同一段 4K 视频连续运行 5 次解码的结果
Debian 1 2 h265 解码
mvx_decoder -f raw -i hevc -o yuv420_afbc_10 ./jellyfish-300-mbps-4k-uhd-hevc-10bit.hevc test2.yuv > /dev/nullDebian 13 h264 解码
mvx_decoder -f raw -i h264 -o yuv420_nv12 ./Ducks.Take.Off.2160p.QHD.CRF25.x264-CtrlHD.h264 test.yuv > /dev/nullDebian 13 h265 解码
mvx_decoder -f raw -i hevc -o yuv420_afbc_10 ./jellyfish-300-mbps-4k-uhd-hevc-10bit.hevc test2.yuv > /dev/null看起来差别很大,我确认了一下 VPU 的调度策略,确实都是 simple_ondemand ,理论上不应该有这么大的差异,后续有时间会再分析一下这个结果