Higher power consumption in OpenWrt vs Arch Linux

I am wondering what is driving the nearly double power consumption when booted into OpenWrt vs booted into Arch Linux. The hardware is an AMD Ryzen 7 5800U based mini PC. I built a snapshot of OpenWrt running the 3.1.38 kernel (see PR#12982). Arch is running either the 3.1.38-lts kernel or the 6.4.1 kernel.

Under OpenWrt idle power consumption is 9 watts. Under Arch (either kernel) idle power consumption is 5 watts.

  • Both use the schedutil governor and amd_pstate=passive
  • There are some differences in the two kernel's tick rates but I am not sure if that would explain the difference.

Does anyone have any thoughts? Could there be something in the kernel config to blame?

On OpenWrt:

% grep HZ config 
CONFIG_HZ_PERIODIC=y
# CONFIG_NO_HZ_IDLE is not set
# CONFIG_NO_HZ_FULL is not set
# CONFIG_NO_HZ is not set
CONFIG_HZ_100=y
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=100
# CONFIG_MACHZ_WDT is not set

On Arch:

% grep HZ config 
CONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not set
# CONFIG_NO_HZ_IDLE is not set
CONFIG_NO_HZ_FULL=y
CONFIG_NO_HZ=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_MACHZ_WDT=m

NO_HZ && NO_HZ_FULL && NO_HZ_IDLE would be worth testing, beyond that there may be additional missing (not enabled-) drivers (modules) in OpenWrt which properly initialize hardware (and put it into lower power mode).

I added those and built the kernel, but there’s no change.

As a test, I booted Arch with OpenWrt's kernel slightly modified to support devtmpfs which Arch needs. Arch successfully booted with this kernel and had the same 9 watts of idle power consumption...

The graphics side (drm drivers, firmware) would be my next hunch.

Me too... I tried building OpenWrt with amdgpu support (pulled in modules and firmware) but that did not change the idle.

Turns out I did not do a fair comparison of Arch vs OpenWrt. I should have compared OpenWrt without having it setup and without traffic flowing. I was mislead by that. See: Increasing the number of network interfaces with VLANs increases power consumption .. any way to lower?

tl; dr - there are no differences of power consumption of these distros. OpenWrt has flowing about 30 GB/hour of data since it was fully configured vs Arch which was not flowing any traffic.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.