Ubuntu 14.04 draining laptop battery quicker than in 12.04 (1 hour versus 4+ hours)
I have recently upgraded to Ubuntu 14.04 on a Lenovo T420 laptop (Corei7-2620M CPU @ 2.70GHz × 4 + Sandybridge Mobile). The battery is now over 2 years old, but under Ubuntu 12.04 it still lasted between 4 and 5 hours. Now with Ubuntu 14.04 it lasts little over one hour.
What can I do about this issue? Install drivers? Optimise the power management somehow?
Update I: Regarding the graphics card:
$ lspci | grep -i --color 'vga'
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
Update II: Below is a sample output from PowerTop. I do not see anything strange, although I never used this programme before. Any insight is welcome.
Usage Events/s Category Description 2419 rpm Device Laptop fan 8.1 ms/s 216.8 Timer hrtimer_wakeup 42.5 ms/s 111.7 Process /usr/lib/firefox/firefox 100.0% Device Audio codec hwC0D1: Conexant 100.0% Device Audio codec hwC0D0: Conexant 6.5 ms/s 73.0 Process /opt/ibm/lotus/notes/framework/../notes /authenticate 3.8 ms/s 76.7 Interrupt PS/2 Touchpad / Keyboard / Mouse 1.0 ms/s 64.1 kWork od_dbs_timer 15.8 ms/s 27.9 Process compiz 7.7 ms/s 32.0 Process gnome-terminal 214.0 µs/s 26.4 kWork disk_events_workfn 24.5 ms/s 26.7 Process /usr/lib/firefox/plugin-container /usr/lib/flashplugin-installer/libflashplayer.so -greomni /usr/lib/firefox/omni.ja -appomni / 17.9 ms/s 28.3 Process /usr/bin/X -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch 5.3 ms/s 31.4 Process /usr/bin/java -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=256m -Xms40m -Xmx512m -jar /usr/share/eclipse.kepler//plugins/org. 1.2 ms/s 32.7 Process /home/desousa/.rvm/rubies/ruby-1.9.2-p290/bin/ruby script/rails s 1.5 ms/s 18.7 Timer tick_sched_timer 372.4 µs/s 16.3 Process [rcu_sched] 3.4 ms/s 12.8 Process transmission-gtk /home/desousa/Desktop/foo.torrent 1.2 ms/s 11.0 Interrupt [42] 464.6 µs/s 7.7 Process /usr/lib/firefox/plugin-container /opt/google/talkplugin/libnpgoogletalk.so -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib 1.8 ms/s 10.2 Process /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.2.3.20110915-1350/linux/x86/notes2 --launcher.suppressErr 492.4 µs/s 9.8 Process [irq/44-iwlwifi] 1.2 ms/s 8.4 Interrupt [0] HI_SOFTIRQ 100.4 µs/s 7.6 Timer ehci_hrtimer_func 498.1 µs/s 7.0 Process /usr/lib/jvm/java-6-sun/jre/bin/java -Djava.util.logging.config.file=/usr/share/tomcat7/conf/logging.properties -Djava.util.log 0.9 ms/s 6.1 Process diodon 130.8 µs/s 6.4 kWork ieee80211_iface_work 38.7 µs/s 6.4 kWork gen6_force_wake_work 76.9 µs/s 6.1 kWork intel_unpin_work_fn 342.9 µs/s 5.6 Process /usr/sbin/mysqld 0.7 ms/s 5.4 Interrupt [3] net_rx(softirq) 90.6 µs/s 5.5 Interrupt [44] iwlwifi 3.1 ms/s 2.9 Process gedit 186.7 µs/s 4.1 Process syndaemon -i 1.0 -t -K -R 179.0 µs/s 4.2 Process /opt/google/talkplugin/GoogleTalkPlugin 238.6 µs/s 4.1 Process /opt/ibm/lotus/notes/taskldr /opt/ibm/lotus/notes/taskldr
Update III: I did another test, running the laptop until the battery was completely drained. There are two important differences in battery management from 12.04:
Whereas with 12.04 the screen would be dimmed after 30 seconds of inaction, with 14.04 the screen is always left with the same brightness. There are even moments when the fan speeds up when I am not typing, this never happened with 12.04.
Although I have set the laptop to suspend after 10 minutes inactive on battery, it never suspends. Once the 10 minutes are past Ubuntu simply shows the log on screen; it does not dim the screen either.
Update IV: I run the updates yesterday and the battery is being discharged even faster, now it is gone in less that an hour. Below is the output of powertop
minutes after unplugging.
The battery reports a discharge rate of 32.8 W
The estimated remaining time is 0 hours, 56 minutes
Summary: 722.8 wakeups/second, 149.5 GPU ops/seconds, 0.0 VFS ops/sec and 23.3% CPU use
Power est. Usage Events/s Category Description
5.55 W 63.2% Device Display backlight
90.2 mW 162.0 ms/s 220.6 Process /usr/lib/firefox/firefox
70.7 mW 31.0 µs/s 26.3 Process postgres: wal writer process
21.0 mW 306.3 µs/s 30.0 Process [irq/44-iwlwifi]
19.6 mW 8.6 ms/s 63.0 Process compiz
7.63 mW 1.7 ms/s 24.5 Process /opt/ibm/lotus/notes/notes /authenticate
6.43 mW 2.2 pkts/s Device Network interface: wlan0 (iwlwifi)
1.35 mW 188.5 µs/s 2.3 Process diodon
997 µW 77.2 µs/s 2.6 Process syndaemon -i 1.0 -t -K -R
798 µW 4.2 ms/s 19.3 Process /usr/bin/java -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=256m -Xms40m -Xmx512m -jar /usr/share/eclipse.kepler//plugins/org.
499 µW 394.4 µs/s 1.1 Process gnome-terminal
299 µW 2.3 ms/s 7.0 Process mono /usr/lib/tomboy/Tomboy.exe --search
0 mW 3.9 µs/s 0.15 Process sametime_idlemon 20 10
0 mW 13.7 ms/s 5.1 Process /usr/bin/X -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
0 mW 12.6 ms/s 17.7 Process /usr/lib/firefox/plugin-container /usr/lib/flashplugin-installer/libflashplayer.so -greomni /usr/lib/firefox/omni.ja -appomni /
0 mW 6.1 ms/s 163.9 Timer hrtimer_wakeup
0 mW 2.7 ms/s 25.6 Interrupt [42] i915
0 mW 2.5 ms/s 14.4 Timer tick_sched_timer
0 mW 2.0 ms/s 19.2 Process rhythmbox
0 mW 1.9 ms/s 7.5 Process /usr/bin/pulseaudio --start --log-target=syslog
0 mW 1.3 ms/s 63.2 kWork od_dbs_timer
0 mW 1.3 ms/s 0.00 Timer delayed_work_timer_fn
0 mW 0.9 ms/s 0.05 kWork acpi_os_execute_deferred
0 mW 0.8 ms/s 0.00 Interrupt [1] timer(softirq)
0 mW 0.7 ms/s 53.4 kWork disk_events_workfn
0 mW 629.9 µs/s 0.8 Process chromium-browser --enable-pinch
0 mW 561.9 µs/s 19.5 Process /home/desousa/.rvm/rubies/ruby-1.9.2-p290/bin/ruby script/rails s
0 mW 508.1 µs/s 0.10 Process powertop
0 mW 496.9 µs/s 5.3 Process /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.2.3.20110915-1350/linux/x86/notes2 --launcher.suppressErr
0 mW 468.2 µs/s 0.8 Interrupt [7] sched(softirq)
0 mW 281.6 µs/s 4.1 Interrupt [4] block(softirq)
0 mW 276.5 µs/s 3.1 kWork iwl_bg_run_time_calib_work
0 mW 260.5 µs/s 0.00 Interrupt PS/2 Touchpad / Keyboard / Mouse
0 mW 200.0 µs/s 15.6 kWork intel_unpin_work_fn
0 mW 173.5 µs/s 4.6 Process /usr/lib/jvm/java-6-sun/jre/bin/java -Djava.util.logging.config.file=/usr/share/tomcat7/conf/logging.properties -Djava.util.log
0 mW 160.9 µs/s 0.00 Process [kworker/u16:0]
0 mW 160.3 µs/s 0.25 Process pool
0 mW 159.0 µs/s 0.00 Interrupt [9] RCU(softirq)
0 mW 147.4 µs/s 4.0 Process /usr/sbin/mysqld
0 mW 144.9 µs/s 0.4 Interrupt [9] acpi
0 mW 131.4 µs/s 10.3 Interrupt [44] iwlwifi
0 mW 129.5 µs/s 2.0 Process /usr/lib/firefox/plugin-container /opt/google/talkplugin/libnpgoogletalk.so -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib
0 mW 128.7 µs/s 4.7 kWork ieee80211_iface_work
0 mW 118.9 µs/s 0.00 Interrupt [40] SATA controller
Update V: I used the information provided by powertop
to make a few calculations:
- At the discharge rate reported, the battery right now has about 32 Wh of capacity;
- The battery is advertised with a capacity close to 100 Wh when new, lasting up to 15 hours;
- With Ubuntu 12.04 the battery was lasting about 4.5 hours, about 1/3 of 15 hours, squaring exactly with a loss of 2/3 of capacity;
- Thus, with Ubuntu 12.04 the average discharge rate must have been around 7 W.
An increase of power consumption from 7 W to 32 W is nothing short of catastrophic. Whatever is causing this must be far more serious than just some guzzler application or a misconfigured package.
Update VI: I am writing this from a live 14.04 session loaded from a USB key. Power consumption seems to be somewhat lower than with the HDD system (80% - 90%), which can be explained by a reduced number of services and applications running. Still, battery lifetime is far lower than what it was with Ubuntu 12.04.
Update VII: the abnormally high discharge rates are back, apparently after an upgrade to linux-headers-generic
around the 15th of July. This is now reported as a bug at launchpad.
Any hints on how to bring back battery lifetime would be much appreciated.
You may try linrunner's TLP app.
The package can be found at Launchpad, or simply add the PPA into your sources.list
file:
deb http://ppa.launchpad.net/linrunner/tlp/ubuntu trusty main
Then run:
sudo apt-get update && apt-get install tlp
Type:- sensors
it will show your cup temperature.
To save battery :
1- Reduce brightness
2- Install TLP. (remove PowerTop and Laptop-mode-tools first)
sudo apt-get purge powertop laptop-mode-tools
sudo add-apt-repository -y ppa:linrunner/tlp && sudo apt-get update && sudo apt-get install -y tlp tlp-rdw
3- Turn Off Bluetooth when not in use.
I just ran the updates and rebooted the laptop again. Lo and behold, power consumption is now down to 11 W, the screen is dimming automatically and the session locked after 5 minutes inactive.
I am trying to find which package update may have fixed power management, but there is nothing obvious in the apt
history:
Start-Date: 2014-05-28 14:09:15
Commandline: apt-get install rabbitvcs-cli rabbitvcs-core rabbitvcs-gedit rabbitvcs-nautilus3
Upgrade: rabbitvcs-cli:amd64 (0.16-1~precise, 0.16-1~trusty), rabbitvcs-gedit:amd64 (0.16-1~precise, 0.16-1~trusty), rabbitvcs-nautilus3:amd64 (0.16-1~precise, 0.16-1~trusty), rabbitvcs-core:amd64 (0.16-1~precise, 0.16-1~trusty)
End-Date: 2014-05-28 14:10:09
Start-Date: 2014-05-30 10:06:25
Commandline: apt-get install indicator-cpufreq
Install: libcpufreq0:amd64 (008-1, automatic), indicator-cpufreq:amd64 (0.2.2-0ubuntu1)
End-Date: 2014-05-30 10:07:06
Start-Date: 2014-05-30 14:04:43
Commandline: apt-get upgrade
Upgrade: im-config:amd64 (0.24-1ubuntu4, 0.24-1ubuntu4.1), nemo-data:amd64 (2.2.2-0~webupd8~trusty0, 2.2.2-0~webupd8~trusty1), nemo:amd64 (2.2.2-0~webupd8~trusty0, 2.2.2-0~webupd8~trusty1), libnemo-extension1:amd64 (2.2.2-0~webupd8~trusty0, 2.2.2-0~webupd8~trusty1)
End-Date: 2014-05-30 14:06:02
Start-Date: 2014-05-30 14:38:11
Commandline: aptdaemon role='role-commit-packages' sender=':1.104'
Install: syslinux-themes-debian-wheezy:amd64 (12-3, automatic), unetbootin-translations:amd64 (585-2ubuntu1, automatic), syslinux-themes-debian:amd64 (12-3, automatic), extlinux:amd64 (4.05+dfsg-6+deb8u1, automatic), unetbootin:amd64 (585-2ubuntu1)
End-Date: 2014-05-30 14:38:47
In any case, the fix to this issue seems simply to update the system:
sudo apt-get update && sudo apt-get upgrade
I will keep this answer up to date if I find exactly which package(s) where concerned.
Update: there was another package upgrade last week that sent the battery discharge rate off the charts again. I am still not certain which package is behind this, but it seems to be linux-headers-generic
.