Battery life in Linux sometimes tends to be shorter due to drivers not being able to automatically going into a sort of Power Saving mode.
Although the following suggestions won't change lots if your graphics card is on maximum power consumption permanently, I've found they've helped increase my battery life quite a bit:
You will then be able to click on the icon to the right of the keyboard icon in this screenshot below (indicator bar):
And this should open up a menu like below:
The lower your processor speeds the less power it will consume, so either go with Powersave or put it on the minimum, this reduces battery power consumption especially well if you have a multi-core CPU.
For how to configure TLP in detail check the answers to this question on power-saving in 13.04 they explain more than enough for your needs I'd expect.
Install Jupiter if you're running 11.10, 12.04 or 12.10
sudo add-apt-repository ppa:webupd8team/jupiter
sudo apt-get update
sudo apt-get install jupiter
This applet can be opened using the lightning bolt in the indicator bar:
Or alternatively if it doesn't start up automatically you can turn launch it by typing
jupiter into a terminal window (opened using Ctrl+Alt+T). Once you click on the lightning bolt you'll have the following menu open up where you'll be able to choose your power-consumption setting:
Additionally in the devices tab you can disable wifi and bluetooth if you don't need them and would rather have more battery-life.
- Install powertop:
sudo apt-get install powertop
You run the app by typing in
sudo powertop in the terminal and you use the arrow keys to go the far right column entitled Tunables, you should see something like this:
Using the arrow keys select each of the "Bad" settings and set them to "Good" by pressing enter, this should ensure your computer is using your battery in an optimal way.
Set Jupiter and CPUFreq on startup
Normally Jupiter and CPUFreq should start up automatically next time you reboot but if they don't all you have to do is go into start-up applications and type in the following:
Obviously you can change the names and comments of the start-up programs to whatever you want as long as the command stays the same.
So in short to answer your question:
If it is your GPU which is draining your battery, then you have to wait on nVidia. However if any other component is also draining power the steps I've highlighted above will help you solve any problems and increase your battery life.
NB. Some information taken from the following sources:
Many thanks to both of them.