Ubuntu – Why does powertop still detect tunable settings on >12.04

12.04kernellaptoppower-management

According to this Q&A laptop-mode-tools and powertop are not needed anymore with ubuntu 12.04 as the power savings are now included in the kernel.

So I decided to remove laptop-mode-tools from my laptop, as it caused my laptop to hang on shutdown when on battery and supposedly would not make any difference in power consumption.

But when I checked powertop after removing laptop-mode-tools I remarked that actually some "Tunables" went from "good" with laptop mode still on, to "bad" after removal.

Bad           VM writeback timeout                                                                                   
Bad           Runtime PM for PCI Device Fresco Logic FL1000G USB 3.0 Host Controller
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2
Bad           Runtime PM for PCI Device Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port
Bad           Runtime PM for PCI Device Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller
Bad           Runtime PM for PCI Device Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1
Good          Wireless Power Saving for interface wlan0
Good          Enable SATA link power management for /dev/sda
Good          NMI watchdog should be turned off
Good          Enable Audio codec power management
Good          Bluetooth device interface status
Good          Autosuspend for USB device BT-270 (Broadcom Corp)
Good          Autosuspend for USB device USB2.0 UVC 2M WebCam (USB2.0 UVC 2M WebCam)

With laptop-mode-tools still on only the first one was marked as "bad".


So my actual questions are:

  • If those power savings are are integrated in the kernel used by
    Ubuntu 12.04, why can powertop see a difference?

  • Will removing laptop-mode-tools change anything to my battery life?

  • I also installed Jupiter to improve my batterylife, is this
    irrelevant as well?


I hope my explanations were somewhat clear. (note that I am quite new to Ubuntu and to GNU/Linux)

Thanks a lot.

Best Answer

I will answer it by parts:

Explanations

If those power savings are are integrated in the kernel used by Ubuntu 12.04, why can powertop see a difference?

  • PowerTop can do some work to save your power, kernel now has a built-in function to manage your battery life, that is enabled through laptop-mode-tools, although it comes configured for generic hardware. PowerTop passes to laptop-mode-tools some instructions for better power management based in your specific system, so this way you don´t need to manually configure laptop-mode-tools' file. Summarizing, it automatizes the configuration of power settings, although I can´t say you what it represents in numbers, each battery, each system are different, if you want, perform some tests.

Will removing laptop-mode-tools change anything to my battery life?

  • Laptop-mode-tools is a package that is responsible to extend your battery life, and most important, this package is what activates Laptop Mode feature of the Linux kernel. This package allows you to tweak a lot of power-related settings through direct file editing, you can use PowerTop to do the dirty job for you, but if you know a lot of it... no automatized thing can substitute a hard human work. Summarizing, removing laptop-mode-tools may cause some noticeable difference in your battery life as your system without it won´t care about using battery power in an efficient way.

I also installed Jupiter to improve my battery life, is this irrelevant as well?

  • Jupiter enable your system to take advantage of Super Hybrid Engine (SHE) technology that uses a collaborative work between hardware, software and BIOS to save your battery. If your hardware makes use of SHE you need Jupiter to take advantage of it as it can bring an up to 50% longer battery life. Although if your hardware does not support SHE, Jupiter acts as a normal power saving tool that regulates system power usage according to your necessities. Summarizing it does make difference, mainly if you can make use of SHE, although as time passes tools such PowerTop will make energy management so efficient that software like Jupiter won´t be necessary, but for now you may see some improvements.

Take a look at these pages to get more informed:

Answer

Why does powertop still detect tunable settings on >12.04?

Because there are tunable settings, as far as I know you still need laptop-mode-tools to make use of power saving features built-in in Linux Kernel, or a program such Jupiter instead. The Q&A you mentioned show that improvements of energy use was made in the kernel, and it didn't mentioned that laptop-mode-tools is irrelevant, and notice that these improvements apply for all cases, when you are in a Desktop or Laptop, if you want the kernel to manage energy for battery usage you still need laptop-mode-tools or something else to say to the kernel to do so.

Why the improvements powertop, Jupiter and co. claim to offer haven't been implemented into the kernel?

See that PowerTop does't add features to power management, the features that it makes use are all implemented into the Linux kernel, although Linux kernel doesn't know when to use them, here laptop-mode-tools enters, requiring use of these functions from the kernel, although laptop-mode-tools, for stability, security and compatibly issues is designed for generic purposes.

Because of that exists PowerTop package that reconfigures laptop-mode-tools according to the specific machine in use. laptop-mode-tools just can't configure it self to optimize its usage because it makes the tool more fragile, susceptible to failures and unstable.

That's why PowerTop can't "merge" with laptop-mode-tools and see that kernel already has the features, laptop-mode-tools just say: - Use it, we are in a laptop!

Jupiter makes use of SHE, a technology restricted only for ASUS Notebooks. Linux kernel can't implement this feature because it's a software based feature. And Jupiter also offer user modes of use, so the user decides what the needs are, something that can't be offered by the kernel and Jupiter just say to the kernel what do do, again, Kernel has the features to use, and Jupiter is saying to the kernel: - Use them this way!

SHE is a tool that enhances the notebook's energy efficiency, intelligently boost system performance under heavy load, thus enabling the notebook to meet the demands of processor and resource-intensive tasks and also offers a choice of performance and power consumption modes that allow users to make quick and easy adjustments to suit their usage scenarios.

So it's just a software that makes use of some specific hardware design, identify processes running to manage power and offer user customization. A kernel function can't offer that, kernel is not there to evaluate things and make decisions when to use something or not, and software here is a must as it needs to know from the OS how much power it needs, kernel can't evaluate these necessities.

Summarizing: Linux Kernel has the features, laptop-mode-tools just say to the kernel that is time to use them, because Kernel alone can't decide that, it doesn't even know if it's running on a Desktop or Laptop. PowerTop customizes laptop-mode-tools to make better use of its capabilities. Jupiter acts as a mix of PowerTop and laptop-mode-tools and also give the user a simple way to customize power consumption options. Why can't Canonical just replace laptop-mode-tools for a more complete tool such as Jupiter? If they want they can, although, as I said it makes things to be more unstable as it acts different under different machines, so they gain in performance and features, although they lost in stability, I would vote for Jupiter (or a Canonical' similar, they love to make things their own haha) to substitute laptop-mode-tools.

I think I wasn't as clear as I wish, here is a metaphor to simplify:

Kernel is Control Table of a Train Station, in this table exists buttons (features) where it is possible to manage the usage of the trains, although it needs someone to push that buttons when needed, this guy is the Operator (laptop-mode-tools), although this guy just follow patterns according to the time of the day to use or not some trains, but if he has a radio, people in the stations (PowerTop) can communicate him accurately the necessity of more or less trains. In a more automatized system the Operator (Jupiter) instead of a radio has cameras into the stations so he just observe the traffic in the stations and evaluate himself the need or not of more trains. But see that the Control Table (Kernel) has all the buttons (features) to control the trains (manage the power consumption).

My recommendation? Keep the three: laptop-mode-tools, PowerTop and Jupiter. They won't harm your system and things tend to be improved.

Related Question