Bumblebee-Project/Bumblebee logo

Bumblebee-Project/Bumblebee

Free

Bumblebee daemon and client rewritten in C

FreeFree tier
Type
Open Source

About Bumblebee-Project/Bumblebee

Bumblebee daemon is a rewrite of the original Bumblebee service, providing an elegant and stable means of managing Optimus hybrid graphics chipsets. A primary goal of this project is to not only enable use of the discrete GPU for rendering, but also to enable smart power management of the dGPU when it's not in use. It supports multiple backends for rendering (VirtualGL and Primus) and power management methods such as bbswitch and the Linux kernel switcheroo approach. The project is open source, written in C, and available on GitHub.

Key Features

Manages Optimus hybrid graphics chipsets
Enables use of discrete GPU for rendering
Smart power management of the discrete GPU when not in use
Supports multiple backends: VirtualGL and Primus
Power management via bbswitch or kernel switcheroo method
Init system support: Upstart, systemd, Sys V
Open source and written in C

Pros & Cons

Pros
  • Open source and free to use
  • Provides efficient power management for hybrid graphics laptops
  • Supports multiple rendering backends
  • Community-maintained with ongoing development
  • Integrates with common init systems
Cons
  • Limited to NVIDIA Optimus hardware
  • Requires manual configuration and installation of dependencies (e.g., VirtualGL, bbswitch)
  • Depends on either nouveau or proprietary nvidia driver, which can be tricky to set up
  • May not support all hardware configurations or suspend properly

Best For

Running graphics-intensive applications on laptops with NVIDIA Optimus technologyEnabling 3D rendering on the discrete GPU while saving power on the integrated GPUPower management for notebooks that switch between integrated and discrete graphics

FAQ

How do I install Bumblebee from source?
Download the source tarballs from GitHub, ensure dependencies (pkg-config, glib-2.0, libx11, libbsd) are installed, then run ./configure, make, and sudo make install. If building from git, first run autoreconf -fi.
How do I use Bumblebee after installation?
Create the bumblebee group (sudo groupadd bumblebee), add your user to it (sudo gpasswd -a $USER bumblebee), then start the daemon with 'sudo bumblebeed --daemon' and run applications with 'optirun -- application'.
What power management methods does Bumblebee support?
Bumblebee supports power management via bbswitch and the Linux kernel switcheroo method (with the optimus patch, merged in Linux 3.3). Note that suspend is not yet supported by the switcheroo method.