Request: PowerTOP for x86

Hi, is anyone maybe willing to make powertop for x86_64 and the x86 branches? Im probably not alone wanting to see what is causing most power usage and maybe do some config against it.

Thank you in advance.

Hmm, I forgot about it, and I'm interested in low power consumption, I'll try to pack it

1 Like

Thank you, i can test the package once youre ready. Sadly my programming skills are far to low to contribute anything useful.

Here are some old gits that i found looking for the package. Powertop was once in OpenWrt 12.09:


I took a quick look at it, but I don't know why libnl libs are missing at packing despite the fact that I had them on DEPENDS, but I'm sure I'll resolve that

1 Like

do you know how to build the package yourself ?
I did a mistake on not running menuconfig and saving changes that's why I had the libs missing
you need to have installed DEPENDS:=+pciutils +libstdcpp +libncursesw +libnl-genl
this is a 64bit package
https://drive.google.com/open?id=1i3h8UuPbYcZ8DlEfLn90UrgrtHz_72LV

it's missing some pci dev, but I'll try to see why is not picking the libs

Not really :confused:

I will try it later on tonight.

libpci.pc is not installed in libs so it wouldn't be picked and some more fixup to pciutils are needed because it will fail with

libpci.a(names-parse.o): in function id_parse_list': ..undefined reference togzgets'

etc

1 Like

We have time :slight_smile: I will maybe ask a friend to help so... we will see :slight_smile:

it's almost finished but for pci youll need the libpci also, but you can try the first one and if not today, maybe tomorrow

So i had a few minutes times, some things already works, some not:

idle stats:

           Pkg(OS)  |            CPU(OS) 0

                    |            CPU(OS) 1

Frequency stats:

            Package |            CPU 0
1.80 GHz     0.0%   | 1.80 GHz     0.0%
1500 MHz     0.0%   | 1500 MHz     0.0%
 800 MHz     0.0%   |  800 MHz     0.0%
Idle         0.0%   | Idle         0.0%

                    |            CPU 1
                    | 1.80 GHz     0.0%
                    | 1500 MHz     0.0%
                    |  800 MHz     0.0%
                    | Idle         0.0%

Under 'device stats', it seems the cpu stats are broken:

    -0.0%        CPU use

Under 'overview', the summary seem broken too:
Summary: -nan wakeups/second, -nan GPU ops/seconds, -nan VFS ops/sec and -0.0% CPU use

root@InternetD:~# powertop
modprobe cpufreq_stats failedmodprobe msr failedCannot load from file
Cannot load from file
File will be loaded after taking minimum number of measurement(s) with battery o                                                                                                                                                             nly
RAPL device for cpu 0
RAPL device for cpu 0
Devfreq not enabled
glob returned GLOB_NOMATCH
Cannot load from file
File will be loaded after taking minimum number of measurement(s) with battery o                                                                                                                                                             nly

autotune give me the same with this:

failed to find a module named cpufreq_stats

that one needs an option in kernel CONFIG_CPU_FREQ_STATS=Y
maybe it will be accepted who knows

Do you know how i can turn this on in the imagegebuilder? I can make an image later on.

you can't have it because is not in SDK

Damn, so we need to make a request i guess, then it should land quickly in master. Should we do it in the bug tracker i guess?

maybe I'll make a PR to be available as a module
try this one, it has libpci support, maybe it has something more

https://drive.google.com/open?id=1GjUQ-D-ICMZL4yqMDBA4S2wjN4YStY70

tested it and PR


1 Like

libpci is working nicely:


              Usage     Device name
             1564 pkts/s  nic:ifb4eth1
             1190 pkts/s  nic:br-lan
             1175 pkts/s  Network interface: eth0 (tg3)
             1163 pkts/s  Network interface: eth1 (igb)
            100.0%        PCI Device: Intel Corporation 82576NS Gigabit Network Connection
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode]
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Miscellaneous Control
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller
            100.0%        PCI Device: Intel Corporation 82576NS Gigabit Network Connection
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] RS780/RS880 PCI to PCI bridge (PCIE port 0)
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller
            100.0%        PCI Device: Broadcom Inc. and subsidiaries NetLink BCM57780 Gigabit Ethernet PCIe
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] RS780/RS880 PCI to PCI bridge (PCIE port 5)
            100.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
             31.0 pkts/s  nic:ifb4pppoe-wanb
             25.7 pkts/s  Network interface: eth2 (igb)
             25.6 pkts/s  nic:pppoe-wanb
              0.0%        USB device: OHCI PCI host controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] Family 10h Processor DRAM Controller
              0.0%        USB device: OHCI PCI host controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Address Map
              0.0%        USB device: EHCI Host Controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] RS880 HDMI Audio [Radeon HD 4200 Series]
              0.0 pkts/s  nic:ifb1
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
              0.0%        USB device: OHCI PCI host controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] RS880 Host Bridge
              0.0%        USB device: EHCI Host Controller
              0.0%        PCI Device: Fujitsu Technology Solutions Device 9602
              0.0%        USB device: OHCI PCI host controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller
              0.0%        USB device: OHCI PCI host controller
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Link Control
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] RS880 [Radeon HD 4250]
             -0.0%        CPU use
              0.0%        runtime-alarmtimer
              0.0%        runtime-PNP0800:00
              0.0%        runtime-microcode
              0.0%        runtime-PNP0103:00
              0.0 pkts/s  nic:ifb0
              0.0%        runtime-pcspkr
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge
              0.0%        runtime-platform-framebuffer.0
              0.0%        runtime-serial8250
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD] Family 10h Processor HyperTransport Configuration
              0.0%        runtime-i8042
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller
              0.0%        runtime-PNP0C04:00
              0.0%        PCI Device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA)
              0.0%        runtime-PNP0C0C:00

I think it needs some folder to store the config, I saw at program exit that it couldn't save something, I'll test the kernel module to see if it adds something

1 Like