I'm wondering about improving powertop's auto-tuning. Currently the situation is that, if you want to tune your laptop's power consumption, you can run powertop and turn on all the tunables and try it for a while to see if anything breaks. The breakage might be something subtle.
Then after a while you reboot and your laptop is using too much power again
until you remember to run powertop again. This happens a half dozen or so
times. You then automate running powertop --auto-tune
or individual
tuning commands on boot, probably using instructions you find in the Arch
wiki.
Everyone has to do this separately, which is a lot of duplicated and rather technical effort for users, while developers are left with a lot of work to manually collect information, like Hans de Goede is doing now for enabling PSR by default.
To improve this, powertop could come with a service file to start it on boot, read a config file, and apply tunings if enabled.
There could be a simple GUI to configure it, where the user can report when it's causing a problem. In case the problem prevents booting, there would need to be a boot option that disables the autotuning too.
When the user reports a problem, the GUI could optionally walk them through a bisection to find the problematic tuning, which would probably take only 4 or so steps.
Information could be uploaded, anonymously to a hardware tunings database. Developers could then use that to find and whitelist safe tunings. Powertop could also query that to avoid tunings that are known to cause problems on the laptop.
I don't know if this is a new idea, but if it's not been tried before, it seems worth working on.
Of course we could invent a new config file format and we could write a new GUI for it.
I think it would be wiser to use (and improve) solutions that already implement config file mechansims, have GUIs/WebUIs, and have ways to upload/share configs.
Ad: More about that in the talk tomorrow at FOSDEM https://fosdem.org/2018/schedule/event/elektra/
@josh, the problem is that these tunings are not always safe to enable, causing audio problems or screen problems or whatever, and information about which laptops have hardware that breaks with them is currently hard to collect.
But yes, if the information were collected as I propose, it could be used in the kernel to whitelist the tunings on good hardware.