From what I had previously read, it took a lot of special hacks and workarounds to get NVIDIA’s Optimus running correctly on the Lenovo Y580 (and other similar laptops) using the Bumblebee project. This was applicable only to the Linux 3.2 kernel. However, I just upgraded my kernel to 3.11, which is supposed to work with Bumblebee using just the standard installation. It does, but there are still a few quirks that needed to be addressed. Here are the instructions for installing and using Bumblebee for the Lenovo laptops.
- First, you need to remove old Nvidia drivers and any other attempts to install bumblebee. Remove these by executing the command below (and including any other
nvidia-###-updatesdriver versions that you might also have installed):
sudo apt-get purge nvidia-319 nvidia-319-updates nvidia-304 nvidia-304-updates bumblebee-nvidia nvidia-current nvidia-settings nvidia-current-updates bbswitch-dkms bbswitch-source bumblebee nvidia-settings-304 nvidia-settings-304-updates nvidia-settings-319 nvidia-settings-319-updates primus
- After that, run the following commands:
Add the appropriate repositories.
sudo add-apt-repository ppa:bumblebee/stable
sudo add-apt-repository ppa: ubuntu-x-swat/x-updates
sudo apt-get update
- Install bumblebee and nvidia-bumblebee.
sudo apt-get install nvidia-bumblebee bumblebee
- Restart computer.
- If autostarting bumblebeed service isn’t working, then create file /etc/init/bumblebeed.override, containing the following 2 lines (per https://github.com/Bumblebee-Project/Bumblebee/issues/337)
start on (runlevel )
stop on (runlevel )
- After finishing all of the steps above, you can run an application with the NVIDIA card enabled by running the commmand "optirun <application-to-run>". For example, to run Chrome with the NVIDIA card enabled, you would run the following from the command prompt:
You can check if the GPU is enabled (ON) or disabled (OFF) by running the following command:
Here are useful links where I found portions of the answer needed, which I’ve compiled into the post above.
- Web log Aleksandra Uroševića
Linux manual pages for commands used: