This is one of a series of posts about Toradex modules' power consumption measurements. This article provides information about the power consumption of Verdin iMX8M Plus.
The Verdin iMX8M Plus's power consumption depends on the devices connected to it. Below are the power consumption results of several test cases, demonstrating realistic system configurations at various CPU loads.
Toradex tests its modules following internal protocols as a way of standardizing the results. The overall power consumption of each module depends on multiple factors, such as:
The following results were achieved by simulating an ideal scenario. Applications in different conditions may not achieve the exact same results. It is suggested that a customer measures its SoM's power consumption under its own particular use cases before designing hardware based on this data.
Test Case | Mean Power Consumption [W] | Max Power Consumption [W] |
---|---|---|
RTC clock (shutdown) | 0.000841 | 0.000851 |
RTC clock (power interrupt) | 0.000843 | 0.000854 |
Suspend mode to RAM | 0.15 | N.A. |
Suspend mode to idle | 1.26 | N.A. |
Idling mode without Ethernet (cable unplugged, no screen) | 1.65 | 1.98 |
Idling mode without Ethernet (cable unplugged, with screen) | 1.87 | 2.18 |
Idling mode with screen | 2.47 | 2.79 |
Stress 1 cores | 2.86 | 3.22 |
Stress 2 cores | 3.13 | 3.64 |
Stress 3 cores | 3.42 | 3.96 |
Stress 4 cores | 3.76 | 4.23 |
All cores stressed without screen | 3.11 | 3.61 |
CPU NEON stress script | 4.59 | 4.78 |
CPU stress + video decoding | 3.21 | 3.64 |
iperf3 ETH PHY on eval board (no screen) | 1.88 | 2.23 |
iperf3 eth (no screen) | 2.63 | 3.07 |
CPU stress with iperf3 eth | 3.89 | 4.16 |
glmark2 | 3.69 | 4.43 |
All cores stressed and glmark2 | 4.51 | 5.41 |
All cores stressed, glmark2, ethernet iperf3 | 4.36 | 5.11 |
Max stress: all cores stressed, glmark2b,iperf3 wifi 2.4GHz, and Ethernet | 4.99 | 6.10 |
Test Case | Mean Power Consumption [W] | Max Power Consumption [W] |
---|---|---|
Idling mode with screen | 1.76 | 1.81 |
idling without screen | 1.70 | 1.98 |
Stress 1 cores | 1.95 | 2.23 |
Stress 2 cores | 2.25 | 2.61 |
Stress 3 cores | 2.53 | 3.03 |
all cores (4) stressed without screen | 2.77 | 3.29 |
CPU stress with iperf3 eth | 2.96 | 3.38 |
CPU stress with iperf3 wifi 2.4GHz | 4.00 | 4.47 |
CPU stress with iperf3 wifi 2.4GHz with rework | 3.78 | 4.30 |
CPU stress with iperf3 wifi 5GHz with rework | 3.83 | 4.19 |
CPU stress with iperf3 eth and wifi 2.4GHz | 4.07 | 4.42 |
CPU stress with iperf3 eth and wifi 5GHz with rework | 3.83 | 4.15 |
all cores stressed and glmark2 | 3.89 | 4.89 |
glmark2 | 2.95 | 3.60 |
cpu neon stress script | 4.09 | 4.36 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 2.4GHz and ethernet | 4.91 | 5.73 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 2.4GHz and ethernet after rework | 4.86 | 5.71 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 2.4GHz and ethernet after rework and eth phy on module | 5.40 | 6.28 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 5GHz and ethernet | 4.75 | 5.55 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 5GHz and ethernet after rework | 4.65 | 5.48 |
max stress: all cores stressed, glmark2 ,iperf3 wifi 5GHz and ethernet after rework and eth phy on module | 5.31 | 6.1 |
Iperf3 Wifi 2.4GHz no screen | 2.65 | 2.84 |
Iperf3 Wifi 2.4GHz no screen after rework | 2.6 | 2.73 |
Iperf3 Wifi 5GHz no screen | 2.86 | 3.06 |
Iperf3 Wifi 5GHz no screen after rework | 2.74 | 2.88 |
iperf3 eth no screen | 1.92 | 2.13 |
All cores stressed, glmark2, ethernet iperf3 | 3.88 | 4.67 |
suspend mode idle | 1.37 | 0.00 |
suspend mode deep RAM | 0.31 | 0.00 |
RTC clock (proper shutdown) | 808n | |
RTC clock (power cable removing shutdown ) | 818n | |
cpu stress + video | 3.14 | 3.58 |
Test Case | Mean Power Consumption [W] | Max Power Consumption [W] |
---|---|---|
Idling with screen | 1.671 | 1.822 |
Idling mode with screen after 20 min | 1.638 | 1.805 |
Max stress: all cores stressed, glmark2, ethernet iperf3, video decoding | 5.054 | 5.756 |
Stress 1 cores | 2.073 | 2.340 |
Stress 2 cores | 2.474 | 2.942 |
Stress 3 cores | 2.792 | 3.410 |
Stress 4 cores | 3.144 | 3.879 |
All cores stressed and glmark2 | 4.886 | 5.672 |
Cpuburn neo | 4.602 | 4.987 |
Full CPU stress with iperf3 eth | 3.964 | 4.549 |
Full CPU stress and HD video decoding | 4.048 | 4.751 |
Headless idle | 1.437 | 1.605 |
Headless idle full CPU stress | 3.227 | 3.996 |
Suspend-to-RAM mode | 0.100 | 0.268 |
Suspend-to-idle mode | 1.153 | 1.271 |
Test Case | Mean Power Consumption [W] | Max Power Consumption [W] |
---|---|---|
Idling mode with screen | 1.69 | 1.75 |
idling without screen | 1.51 | 1.63 |
Stress 1 cores | 1.84 | 2.10 |
Stress 2 cores | 2.14 | 2.51 |
Stress 3 cores | 2.43 | 2.96 |
Stress 4 cores | 2.69 | 3.24 |
CPU stress with iperf3 eth | 2.88 | 3.26 |
all cores stressed and glmark2 | 3.86 | 4.89 |
glmark2 | 2.86 | 3.53 |
cpu neon stress script | 3.75 | 3.79 |
max stress: all cores stressed, glmark2 ,iperf3 ethernet with phy on module | 4.43 | 5.26 |
max stress: all cores stressed, glmark2 ,iperf3 ethernet | 3.86 | 4.65 |
iperf3 eth no screen phy on eval | 1.81 | 1.90 |
iperf3 eth no screen phy on module | 2.41 | 2.54 |
suspend mode to idle | 1.27 | 0.00 |
suspend mode to ram | 0.18 | 0.00 |
cpu stress + video decoding | 2.88 | 3.43 |
RTC clock (proper shutdown) | 822n | |
RTC clock (power cable removing shutdown ) | 821n |
The Verdin Development Board and the Dahlia Carrier Board have a current, voltage and power measurement IC. It is the Texas Instruments INA219.
You need to enable it in the device tree. Check out the articles Device Tree Customization and Device Tree Overlays (Linux) for instructions on how to do it. Below is the device tree code snippet with the required changes:
&hwmon { status = "okay"; };
Then the device will be available on /sys/class/hwmon/hwmonX/
. X can be enumerated as 0 or 1, because there is also a temperature sensor attached on the same I2C bus.
If we assume it will be on hwmon0
, read the power measurement in microwatts (µW):
# cat /sys/class/hwmon/hwmon0/power1_input
Therefore you must divide the result by 1000000 to get the value in watts (W).
Product Page and Datasheet: Verdin iMX8M Plus
Specifications and Design Guides: Carrier Board Design Guides
Thermal Management in Toradex Modules: Thermal Management
How to Suspend Your Module Running Linux: Suspend/Resume (Linux)