Optimus enabled Nvidia graphic cards are not going work that well on Linux. Before any installation, please remove all installed Nvidia drivers.
If you encountered black screen/unable to boot into desktop environments due to installation of previous Nvidia driver, you can remove the driver by this way.
Open the Terminal and enter the following commands:
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get install nvidia-331 nvidia-settings-331
Install Bumblebee. Bumblebee is a tool that provides Nvidia Optimus support to improve battery life of notebooks. Open Software Center > Software Sources, make sure the following repos are checked.
On the Terminal, type the below commands:
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia virtualgl linux-headers-generic
If your computer system is 64 bits, you also need to install this package.
sudo apt-get install virtualgl-libs-ia32:i386
Done. After the installation is completed, you should notice the graphic indicator light on your notebook shows it is currently using integrated Intel graphics. Notebook is much less warmer since the Nvidia graphic is not in use means lesser power consumption.
Optional: To have better performance and less power consumption for Bumblebee, it is recommended to install Primus.
By default Bumblebee uses Optimus (VirtualGL):
Bumblebee uses VirtualGL to copy the image generated by the second (faster) GPU to your display. VirtualGL was intended for use over a network though, so it takes a great many steps to enable this (compression, sending the image over a network link, decompression, etc).
Primus brings better performance and less power consumption when using Bumblebee, by replacing VirtualGL. Advantages over Optimus:
- Less overhead (better framerates) and cleaner solution (no networking or compression involved at all)
- Fixes the "bug" that causes Bumblebee to shut down the GPU too early sometimes (no more need for the "optirun bash" workaround)
- Less buggy/glitchy, easier to debug
- Only uses/starts secondary GPU for OpenGL parts of applications - everything else remains on your main GPU (power savings)
Open Terminal and type the following code to install Primus
sudo apt-get install primus
If your computer system is 64 bits, you need to install this package:
sudo apt-get install primus-libs-ia32:i386