Bumblebee is a software tool for Linux with the aim to provide support for NVIDIA Optimus laptops for GNU/Linux distributions. Optimus is a hybrid display technology where the integrated GPU renders the display while the dedicated GPU (in this case, an nVidia graphic card) does all the processing and sends the output to the integrated GPU. When the laptop is running on battery supply, the dedicated GPU is turned off to save power and prolong the battery life.
Bumblebee tries to mimic the Optimus technology behavior by using the dedicated GPU for rendering when needed and to power it down when not in use.
Ubuntu systems already come with Nvidia Prime which provides a way for users to switch between Nvidia and Intel GPUs. The problem with this is that it only works for the whole desktop and does not allow a user to set the GPU for a certain application. In some systems there have been reports of excessive heating and malfunctions to the system when Nvidia GPU is set for the whole desktop. Using Bumblebee would be a better option in this case.
Before you start installing Bumblebee, I am going to assume that you already have the Nvidia graphics installed. If you have not installed them, you can do so by opening the terminal and running the following command:
You can also run this command so that it uses the Intel graphics card:
Installing Bumblebee will now be determined by the Nvidia graphics that you want to use it with. The following are the options:
To use it with nvidia-316, you can run this command to install Bumblebee:
If you want to use it with the nvidia-370 and are running Ubuntu 16.04 or earlier, you can use Bumblebee Development PPA for installation:
If you are using Ubuntu 16.10 or later, you will not need the Bumblebee Development PPA, as the patches are already in the official Ubuntu repository. Running the following command will install it:
In my case I am installing it on Ubuntu 16.04.
Configuration and Usage
After successfully installing Bumblebee, you will need to configure it to run well. The Bumblebee configuration file is at “/etc/bumblebee/bumblebee.conf.” Open it using a text editor of your choice. Open the configuration file and scroll down to the area shown on the screenshot below.
If you are using nvidia-361, change the following options from the above screenshot to set it up:
- Set the Driver to “nvidia”
- Set the KernelDriver to “nvidia-361”
- Set the LibraryPath to “/usr/lib/nvidia-361:/usr/lib32/nvidia-361”
- Set the XorgModulePath to “/usr/lib/nvidia-361/xorg,/usr/lib/xorg/modules”
Save the file.
If using nvidia-370:
- Set Driver to “nvidia”
- Set the KernelDriver to “nvidia-370”
- Set the LibraryPath to “/usr/lib/nvidia-370:/usr/lib32/nvidia-370”
- Set the XorgModulePath to “/usr/lib/nvidia-370/xorg,/usr/lib/xorg/modules”
Save the file.
If you have installed a different version of nVidia graphics, remember to change the configuration file to match the version.
The final step to get Bumblebee working is to reboot your computer. The discrete card will now be turned off. If you want to run Bumblebee with an application, run this command where some_app_or_game is the name of the application or the game:
Bumblebee is very important for people who run graphic intensive applications on their machines. With it you can switch between the dedicated and integrated graphics as necessary, and it will allow you to maintain the performance of your machine without sacrificing the battery life.