Ubuntu consumes too much battery

I've switched to Ubuntu 16.10 (Gnome) recently. Before, I used Windows 10. Everything is working perfectly and I really like Ubuntu. However, it consumes too much power (only nearly 3 hours compared to more than 4 hours with Windows 10). Besides, the charging time is significantly longer than in Windows.

Can anyone give me some advice? Thanks a lot.


Solution 1:

You have an Aspire R7. If my assumptions are correct, it is either an Intel Broadwell-based computer or Skylake-based. (core i5/i7-5xxx/6xxx)

There are many ways to conserve power in Ubuntu. In 16.10, TLP is by default now included. Configure TLP from:

gedit admin:///etc/default/tlp

or

sudo nano /etc/default/tlp

I recommend setting your CPU governor to powersave when on battery, and performance when plugged in. There are also several other power saving settings there.

Install powertop:

sudo apt-get install powertop

And open it up with sudo powertop in terminal. You can view "Tunables" in the rightmost tab. You can either auto-adjust with:

sudo powertop --auto-tune

Or create a an HTML power report:

sudo powertop --html=powertop.html

Which you can view in the terminal directory. In that HTML file is a list of Tunable commands. Put that in your rc.local script.

If you have the Broadwell/Skylake version of the R7, you will most likely have the known C-state bug with current Intel CPUs. C-states are the sleep states that can be utilized by the CPU, and higher sleep states can save considerable power. You may need to play around with disabling certain devices (SD card reader, Ethernet, etc.) to get working C-states. Unfortunately, this is a known issue and may not be fixed for quite a while.

The current C-state bug does not allow the CU to achieve C-states lower than C3. You can view current C-states in "Idle Stats" in powertop, on the left hand side.

Finally, if you're fairly desperate, I would use a lightweight DE, or even a WM. After fixing C-state issues in my laptop, and switching to i3 window manager, I get at least 7 hours of battery life (heavy browsing, videos, even casual gaming).

Solution 2:

In my personal experience, Ubuntu does have higher power consumption than Windows. That is because of lack of specialized drivers for certain hardware and OS components in Ubuntu (unlike in Windows). However, you can minimize the battery consumption by:

  1. Using a lightweight Desktop Environment like LXDE or XFCE
  2. Using a lightweight distro like Lubuntu, Xubuntu
  3. Using tools to reduce power consumption such as tlp (and tlp-rdw), powertop
  4. (Not recommended) Using Proprietary Graphics Drivers (by downloading them from the manufacturer's website and then installing them)

Solution 3:

I was in the same situation. After searching a lot about it, I got the solution for this problem.

In my case, the main reason was the Graphics Card. By default, Ubuntu uses an open-source driver for any dedicated graphics card which doesn't handle it very well as compared to the Windows operating system. So, the device gets heated quickly. For the cooling process, it uses more power.

So, what you need is a good driver for your graphics card. The installation process for the driver is given below.

After the installation process, you can open the Nvidea graphics card settings by opening the application named NVIDIA X server settings In this application, you can see the PRIME PROFILES. You just have to choose one as per your need. You can see the screenshot here.

I'm assuming that you are not using Ubuntu for gaming or any other purpose which demands a dedicated graphics card. So, you can simply disable the dedicated card in the settings by choosing a power-saving mode.

After doing this, I'm sure that you would get the best battery life.

You can install your driver using the Terminal or using the application software and updates.

1. Using Software and Update Application

  • Open Software and Updates application in your Ubuntu.
  • Choose the option Additional Drivers
  • Now you see the available drivers for your graphics card.
  • Choose a graphics card driver except for the default one and apply changes. (tested one is recommended )

You can see the screenshot of this by clicking here

2. Using Terminal

  • Open Terminal
  • Use these commands
  • sudo apt update

  • sudo apt upgrade

  • sudo ubuntu-drivers devices

  • Now you see some driver names with different versions

  • If you want to install the recommended driver then you just have to use the following command, and you are done with the installation.

    sudo ubuntu-drivers autoinstall

  • If you want to install a specific version, then you can use this command-

    sudo apt install nvidia-driver-version-number

  • Just replace version-number with your desired version.

  • Note: If you don't have an Nvidia graphics card, then you may see something different driver names. You just have to replace the driver's name with your driver's name in the command.