I just switched from Windows 10 to Ubuntu 16.04 LTS and I am quite satisfied with it after installing and configuring Gnome Shell. However, like everyone, I encounter a significant drop in terms of battery life compared to Windows 10 (5 hours to 1.5h).

I first tried to enable Optimus by installing Bumblebee but did not succeed (XORG error). As I don't really need high 3D performance, I decided to stick with the "low" performance Intel HD Graphic with the command

sudo prime-select intel && sudo reboot

After restart, I powertop for 5 minutes and surprisingly got a 20W discharge rate which is freaking high. On the other hand, if I switch to the Nvidia card, I get 14W discharge rate with powertop, which confuses me a lot. On the Nvidia card, I get 3h battery life but still far from Windows. How come the battery life on Intel HD Graphic is worse than on Nvidia Graphic card?

I have a CPU i7 4710HQ with a Nvidia Geforce GTX860M.

PS : TLP does not improve my battery life a bit, but LMT gives lightly better battery life.


Don't know what graphics driver you have installed. I was facing similar problem as yours and i tumbled on to your post while searching for solution. Anyways, this is how i solved my problem:

I had the latest nvidia drivers(367) installed from Graphics driver PPA as i occasionally do gaming(DotA 2) on my system. I downgraded the drivers to 361(proprietary tested ones) from ubuntu repos and the problem was solved. Now i am getting 11w/h with chrome running where as before i was getting 23w/h on intel card. Thats less than half.

Btw, i had to find your post from history but i know the pain. :) Hope it helps.


Thank you for your reply.

Actually, I did give up on this after days of searching but your answer gave me hope so I just went through some tutorials to install Bumblebee again (a mix of those threads):

The same as you, I installed the drivers nvidia-361 and now I am able to run:

optirun firefox

A fast check up with

optirun --status

when Firefox is running gives me this:

Bumblebee status: Ready (3.2.1). X is PID 4591, 1 applications using bumblebeed.

However, after closing Firefox and checking again:

optirun --status

The discrete card is still ON. I don't know whether it is intended, but it seems that Bumblebee is not able to turn off the discrete card after all optirun process are closed. Therefore, to turn off the discrete card, simply:

sudo tee /proc/acpi/bbswitch <<<OFF

As I am usually an unfortunate person, it did not work... Fast Google search tells me that it is because the "nvidia" driver is still in use. Therefore, to turn off the discrete card, I have to remove the driver manually. Well, also as a lazy guy, I created a shell script to avoid having to do it each time. Here it is if some are interested (it's nothing but still...):


if [ $# == 0 ]; then

if [ "$status" == "OFF" ]; then
  sudo rmmod nvidia_modeset
  sudo rmmod nvidia_uvm
  sudo rmmod nvidia

sudo tee /proc/acpi/bbswitch <<<$status

I called the script "bbswitch.sh" and made it executable with:

chmod +x bbswitch.sh

I placed the script in a hidden directory ~/.scripts and added it to the path by adding these two lines at the end of my .bashrc:

export PATH=$PATH:~/.scripts
alias bbs="bbswitch.sh"

Therefore, I am now able to disable the discrete card by simply typing from anywhere:


I can also enable it by typing:

bbs ON

but there is no point (just fancy).

Now, I get a discharge rate that is oscillating between 11 and 12 W/h which allows me to use my laptop for around 4 hours :)

Anyway, thank you for giving me hope again, I wish this thread might help other people as unfortunate as me.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.