1). 简介
NXP iMX8系列应用处理器是NXP发布的基于Cortex-A72/A53/A35和Coretex-M4/M7等架构的ARM处理器,其包含了如下多个子系列,本文就选取其中比较有代表性的iMX8、iMX8X以及iMX8M Mini进行简单的功耗对比测试,从功耗角度给大家为项目选择具体iMX8产品系列做参考。
请注意由于目前iMX8系列产品软硬件还没有进入到最终稳定状态,本文测试数据仅限于当下状态供参考,后续软硬件优化后可能还会存在差异。
本文所演示的iMX8系列ARM平台来自于Toradex ARM嵌入式平台,为了尽量减少外设对功耗的干扰,使用的都是精简的载板(除了iMX8MM平台手里暂时还没有精简载板),尽管如此,本文测试的还是包含了ARM计算机模块和载板一起的功耗数据,因此会比实际模块的功耗略大一些。
./ iMX8QM平台 - Apalis iMX8QM 4GB WB IT ARM核心版配合Ioxra 载板,基于NXP iMX8QuadMax处理器,支持2x Cortex-A72+4x Cortex-A53 CPU,2x GC7000 XSVX GPU(高至128GFLOPS每核心)。
./iMX8QP平台 - Apalis iMX8QP 2GB WB IT ARM 核心板配合 Ixora 载板,基于NXP iMX8QuadPlus处理器,支持1x Cortex-A72+4x Cortex-A53 CPU,2x GC7000Lite XSVX GPU(高至80GFLOPS每核心)。
./iMX8X平台 - Colibri iMX8QXP 2GB WB IT ARM 核心板配合Iris 载板,基于NXP iMX8QuandXPlus处理器,支持4x Cortex-A35,1x GC7000Lite GPU(高至64GFLOPS每核心)。
./iMX8MM平台 - Verdin iMX8MM Quad 2GB WB IT ARM 核心板配合Verdin Development Board载板,基于NXP iMX8M Mini Quad处理器,支持4x Cortex-A53,1x GCNanoUltra GPU(高至6.4GFLOPS每核心)。
2). 准备
a). 硬件连接
不同测试平台通过数字直流稳压电源(Rek – PS-303DM+)进行供电,外设连接调试串口;iMX8QM、iMX8QP和iMX8MM平台连接HDMI显示器,iMX8X平台连接VGA显示器。
b). 测试软件:
./ 全部平台模块安装Toradex V3.0b4 Ycoto Console Linux BSP Image, 基于Linux Kernel 4.14.170内核版本
./ CPU 负载通过BSP自带的stress工具来实现
./ GPU负载通过Ycoto环境编译的glmark2工具来实现,编译好的glmark2 ipk软件包复制到平台Linux下通过“opkg install”命令安装
c). 测试流程
./ 平台上电,进入Linux系统后不进行任何加载,测试系统idle状态直流电源的电流值和电压值得出功耗数据
./ 执行下面命令将CPU负载加至满负荷,观察记录直流电源的电流值和电压值得出功耗数据
-----------------------------------
$ stress -c
-----------------------------------
./ 在上面CPU满载的基础上,通过下面Linux shell脚本来启动8个进程glmark2应用实现GPU压力负载,然后观察记录直流电源的电流值和电压值得出功耗数据
-----------------------------------
#!/bin/sh
for ((i=0;i<8;i++));
do
glmark2-es2-wayland --run-forever --fullscreen > /dev/null 2<&1 &
done
-----------------------------------
3). 测试结果
a). 由于功耗和温度是成正相关的,因此在不同温度下功耗会有一定的差异,同时GPU架构的特点也使其表现去运行时功耗的不稳定性,结合文初提到的软硬件成熟度,功耗的测试数据在不同场景和状态下难免会有差异,因此建议本文数据仅作为横向对比参考,不建议作为实际散热设计的直接依据。
b). 每个平台测试数据
./ iMX8QM平台
电流(A) |
电压(V) |
功率(W) |
|
Idle状态 |
0.45 |
12.1 |
5.445 |
CPU 满负荷状态 |
0.74 – 0.95 |
12.1 |
8.954 – 11.495 |
CPU+GPU 满负荷状态 |
1.2 – 1.4 |
12.1 |
14.52 – 16.94 |
./ iMX8QP台
电流(A) |
电压(V) |
功率(W) |
|
Idle状态 |
0.44 |
12.1 |
5.324 |
CPU 满负荷状态 |
0.65 – 0.8 |
12.1 |
7.865 – 9.68 |
CPU+GPU 满负荷状态 |
0.92 – 1.1 |
12.1 |
11.132 – 13.31 |
./ iMX8X平台
电流(A) |
电压(V) |
功率(W) |
|
Idle状态 |
0.24 |
12.1 |
2.904 |
CPU 满负荷状态 |
0.32 |
12.1 |
3.872 |
CPU+GPU 满负荷状态 |
0.43 – 0.57 |
12.1 |
5.203 – 6.897 |
./ iMX8MM平台
电流(A) |
电压(V) |
功率(W) |
|
Idle状态 |
0.33 |
12 |
3.96 |
CPU 满负荷状态 |
0.42 |
12 |
5.04 |
CPU+GPU 满负荷状态 |
0.47 |
12 |
5.64 |
c). 测试平台功耗横向对比,这里只对比测试出的最大功耗数据
iMX8QM平台 |
iMX8QP平台 |
iMX8X平台 |
iMX8MM平台 |
|
Idle状态功率(W) |
5.445 |
5.324 |
2.904 |
3.96 |
CPU 满负荷状态功率(W) |
11.495 |
9.68 |
3.872 |
5.04 |
CPU+GPU 满负荷状态功率(W) |
16.94 |
13.31 |
6.897 |
5.64 |
4). 总结
本文测试了NXP iMX8产品系列的功耗参考数据,可以看出iMX8QM/QP性能强劲但是相应的功耗也比较大,iMX8X系列功耗和性能取得了不错的平衡,而iMX8MM系列相对来说CPU性能尚佳,GPU则比较弱了。最后再次强调,由于功耗数据受软硬件成熟度、温度、外设、测试设备和条件等众多因素影响,本文测试数据仅供横向对比参考。