Differences between revisions 62 and 64 (spanning 2 versions)
Revision 62 as of 2019-10-21 10:49:41
Size: 10387
Editor: ?Yurii Debian
Comment:
Revision 64 as of 2020-02-25 03:15:56
Size: 10449
Editor: PaulWise
Comment: cleanups
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
Bumblebee aims to provide support for [[http://www.nvidia.com/object/optimus_technology.html|NVIDIA Optimus]] laptops for GNU/Linux
distributions. Using Bumblebee, you can use your NVIDIA card for rendering
graphics which will be displayed using the Intel card.
Bumblebee aims to provide support for [[https://developer.nvidia.com/optimus|NVIDIA Optimus]] laptops for GNU/Linux distributions. Using Bumblebee, you can use your NVIDIA card for rendering graphics which will be displayed using the Intel card.
Line 16: Line 14:
'''For Wheezy users''', Bumblebee packages are available from [[http://backports.debian.org/Instructions/|wheezy-backports]]. Follow the steps listed on that page to add backports to your sources.list (but make sure that you also add wheezy-backports' contrib repository as well to your sources.list, e.g. {{{deb http://YOURMIRROR.debian.org/debian wheezy-backports main contrib non-free}}}), and then install {{{bumblebee}}} or {{{bumblebee-nvidia}}}, and {{{primus}}}. Refer to the [[#Installation|Installation]] section below. '''For Wheezy users''', Bumblebee packages are available from [[https://backports.debian.org/Instructions/|wheezy-backports]]. Follow the steps listed on that page to add backports to your sources.list (but make sure that you also add wheezy-backports' contrib repository as well to your sources.list, e.g. {{{deb http://YOURMIRROR.debian.org/debian wheezy-backports main contrib non-free}}}), and then install {{{bumblebee}}} or {{{bumblebee-nvidia}}}, and {{{primus}}}. Refer to the [[#Installation|Installation]] section below.
Line 26: Line 24:
{{{sudo apt-get install bumblebee primus}}} {{{sudo apt install bumblebee primus}}}
Line 30: Line 28:
{{{sudo apt-get install bumblebee-nvidia primus libgl1-nvidia-glx}}} {{{sudo apt install bumblebee-nvidia primus libgl1-nvidia-glx}}}

Since Debian bullseye libgl1-nvidia-glx no longer exists, the correct package is libgl1-nvidia-tesla-glx so to install nvidia drivers from bullseye or more recent versions:

{{{sudo apt install bumblebee-nvidia primus libgl1-nvidia-tesla-glx}}}
Line 34: Line 36:
{{{sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install bumblebee-nvidia primus libgl1-nvidia-glx primus-libs:i386 libgl1-nvidia-glx:i386}}} {{{sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install bumblebee-nvidia primus libgl1-nvidia-glx primus-libs:i386 libgl1-nvidia-glx:i386}}}
Line 38: Line 40:
{{{sudo apt-get install -t wheezy-backports bumblebee primus}}} {{{sudo apt install -t wheezy-backports bumblebee primus}}}
Line 40: Line 42:
{{{sudo apt-get install -t wheezy-backports bumblebee-nvidia primus}}} {{{sudo apt install -t wheezy-backports bumblebee-nvidia primus}}}
Line 42: Line 44:
{{{sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install -t wheezy-backports bumblebee-nvidia primus primus-libs:i386}}} {{{sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install -t wheezy-backports bumblebee-nvidia primus primus-libs:i386}}}
Line 46: Line 48:
'''Warning''' DebianPkg:xserver-xorg-video-intel is not developed anymore since 2017. Using it may impair your experience on newer graphic cards. As referred in [[GraphicsCard#Intel]], use the modesetting driver instead. '''Warning''' DebianPkg:xserver-xorg-video-intel is not developed any more since 2017. Using it may impair your experience on newer graphic cards. As referred in [[GraphicsCard#Intel]], use the modesetting driver instead.
Line 49: Line 51:

Alternatively, Wheezy, Jessie, Sid and Stretch users can install everything from an external repository (which was setup before bumblebee packages were made available in the official repositories). Check [[http://suwako.nomanga.net/]] for details.
Line 69: Line 69:
Line 70: Line 71:

{{{
Line 71: Line 74:
}}}
Line 73: Line 77:

{{{
Line 74: Line 80:
}}}
Line 75: Line 82:
For a list of options for `optirun` open the manpage with `man optirun` or run: For a list of options for `optirun` open the manual page with `man optirun` or run:

{{{
Line 77: Line 86:
}}}
Line 79: Line 89:
Line 83: Line 94:
Since Bumblebee 3.0, this feature is enabled by default, using [[https://github.com/Bumblebee-Project/bbswitch|bbswitch]]. This allow automatic power management, without any configuration needs. If Power Management doesn't work on your laptop, please go to this [[http://wiki.Bumblebee-Project.org/Power-Management|Power Management (PM)]] page and help to improve Bumblebee. Since Bumblebee 3.0, this feature is enabled by default, using [[https://github.com/Bumblebee-Project/bbswitch|bbswitch]]. This allow automatic power management, without any configuration needs. If Power Management doesn't work on your laptop, please go to this [[https://github.com/Bumblebee-Project/Bumblebee/wiki/Power-Management|Power Management (PM)]] page and help to improve Bumblebee.
Line 86: Line 97:
If you have any questions, feel free to join [[http://webchat.freenode.net/?channels=#bumblebee|#bumblebee]] on Freenode.
If you have any questions, feel free to join [[https://webchat.freenode.net/?channels=bumblebee|#bumblebee]] on Freenode.
Line 89: Line 101:
First of all: If you have any problem, please read the article [[http://wiki.Bumblebee-Project.org/Troubleshooting|Troubleshooting]]. If your issue is not solved, you can join the [[http://webchat.freenode.net/?channels=#bumblebee|#bumblebee]] IRC channel to ask for help (recommended). See also
http://wiki.Bumblebee-Project.org/Reporting-Issues
Line 92: Line 102:
When asked to create a bugreport, run the `sudo bumblebee-bugreport` command in a terminal First of all: If you have any problem, please read the article [[https://github.com/Bumblebee-Project/Bumblebee/wiki/Troubleshooting|Troubleshooting]]. If your issue is not solved, you can join the [[https://webchat.freenode.net/?channels=bumblebee|#bumblebee]] IRC channel to ask for help (recommended). See also
[[https://github.com/Bumblebee-Project/Bumblebee/wiki/Reporting-Issues|how to report issues]].

When asked to create a bug report, run the `sudo bumblebee-bugreport` command in a terminal.
Line 95: Line 108:
Line 96: Line 110:
Line 105: Line 120:
Line 110: Line 126:
Line 123: Line 140:
- If optirun errors out and {{{dmesg}}} reports that your GPU has "fallen off the bus" on Linux >= 3.10, either stick with an older [[http://snapshot.debian.org/package/linux/|kernel version (<= 3.9)]], or add {{{rcutree.rcu_idle_gp_delay=1}}} to your grub command line (in /etc/default/grub, then run {{{update-grub}}} and {{{reboot}}}) as a workaround. - If optirun errors out and {{{dmesg}}} reports that your GPU has "fallen off the bus" on Linux >= 3.10, either stick with an older [[https://snapshot.debian.org/package/linux/|kernel version (<= 3.9)]], or add {{{rcutree.rcu_idle_gp_delay=1}}} to your grub command line (in /etc/default/grub, then run {{{update-grub}}} and {{{reboot}}}) as a workaround.
Line 134: Line 151:
Line 137: Line 155:
 * http://Bumblebee-Project.org/
 * http://suwako.nomanga.net/
 * https://bumblebee-project.org/

Translation(s): English - Français - Italiano - español - Русский - Brasileiro


Bumblebee Project

Bumblebee aims to provide support for NVIDIA Optimus laptops for GNU/Linux distributions. Using Bumblebee, you can use your NVIDIA card for rendering graphics which will be displayed using the Intel card.

The instructions on this page applies to Debian Wheezy and newer. Debian Squeeze and prior are not supported.

For users of versions newer than Wheezy, Bumblebee packages are available directly from the Debian repositories, head down to the Installation section. In summary, it's as simple as installing bumblebee or bumblebee-nvidia, and primus.

For Wheezy users, Bumblebee packages are available from wheezy-backports. Follow the steps listed on that page to add backports to your sources.list (but make sure that you also add wheezy-backports' contrib repository as well to your sources.list, e.g. deb http://YOURMIRROR.debian.org/debian wheezy-backports main contrib non-free), and then install bumblebee or bumblebee-nvidia, and primus. Refer to the Installation section below.

Installation

From repository

Users of versions newer than Wheezy can install everything directly from the official repositories.

For users who would like to use the free nouveau driver:

sudo apt install bumblebee primus

For users who would like to use the proprietary nvidia driver (again, requires contrib and non-free enabled in your sources.list):

sudo apt install bumblebee-nvidia primus libgl1-nvidia-glx

Since Debian bullseye libgl1-nvidia-glx no longer exists, the correct package is libgl1-nvidia-tesla-glx so to install nvidia drivers from bullseye or more recent versions:

sudo apt install bumblebee-nvidia primus libgl1-nvidia-tesla-glx

Users running a 64-bit system who want to take advantage of Bumblebee with the primus backend when running 32-bit applications will also want to install primus-libs:i386. This requires Multiarch support. Similarly, if 32-bit OpenGL support is required (e.g., for running 32-bit Microsoft Windows games under Wine), install libgl1-nvidia-glx:i386, as explained here.

sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install bumblebee-nvidia primus libgl1-nvidia-glx primus-libs:i386 libgl1-nvidia-glx:i386

Wheezy users can install everything directly from backports.

sudo apt install -t wheezy-backports bumblebee primus

  • -or-

sudo apt install -t wheezy-backports bumblebee-nvidia primus

  • -or-

sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install -t wheezy-backports bumblebee-nvidia primus primus-libs:i386

Note wheezy-backports does not contain the newer xserver-xorg-video-intel package that is needed by newer intel cards. If you find yourself stuck with the fbdev or vesa driver then you'll need to upgrade to a newer version.

Warning xserver-xorg-video-intel is not developed any more since 2017. Using it may impair your experience on newer graphic cards. As referred in GraphicsCard#Intel, use the modesetting driver instead.

Warning: If you choose to install bumblebee-nvidia and the dependent nvidia driver packages, during postinst, you will see a debconf prompt warning you that you need to create a xorg.conf file in order to use the proprietary nvidia driver. This prompt only applies to non-Optimus users, i.e. single Nvidia GPU systems. Do NOT allow debconf to create a xorg.conf file, and do NOT run nvidia-xconfig! (This prompt always appears when you install nvidia packages through the repositories, and it currently does not detect Optimus/bumblebee users. See 735049 for a brief explanation.)

Compiling from source

Refer to Bumblebee/ManualInstall. These instructions are provided for historical reference only and are not recommended now that packages are available through the repositories.

Post-installation

You must add your user to the bumblebee group in order to use optirun, i.e.

sudo adduser $USER bumblebee

where $USER corresponds to your username. Don't forget to log out and log back in for this to take effect.

If you have sudo configured for your current user, i.e. your user is a member of the sudo group, this step is not needed (the bumblebee package postinst script takes care of adding sudo users to the bumblebee group automatically). This is likely to be the reason why Bumblebee works out of the box in Ubuntu, but not in Debian, with the same initial setup, i.e. Ubuntu has sudo installed by default; Debian does not. To clarify, sudo is not needed to use bumblebee; it simply makes adding your user to the bumblebee group unnecessary.

Usage

To run your application with the discrete NVIDIA card run in the terminal:

 $ `optirun [options] <application> [application-parameters]`

Example:

 $ `optirun glxgears -info`

For a list of options for optirun open the manual page with man optirun or run:

 $ `optirun --help`

Power Management

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. We're using either bbswitch (a module) or vga_switcheroo (kernel module, experimental) to do this in Bumblebee.

bbswitch is packaged in Debian and is automatically installed when choosing to install bumblebee through the repositories.

Since Bumblebee 3.0, this feature is enabled by default, using bbswitch. This allow automatic power management, without any configuration needs. If Power Management doesn't work on your laptop, please go to this Power Management (PM) page and help to improve Bumblebee.

IRC

If you have any questions, feel free to join #bumblebee on Freenode.

Reporting bugs/problems

First of all: If you have any problem, please read the article Troubleshooting. If your issue is not solved, you can join the #bumblebee IRC channel to ask for help (recommended). See also how to report issues.

When asked to create a bug report, run the sudo bumblebee-bugreport command in a terminal.

Common issues

- If optirun returns the following error:

[ERROR]Cannot access secondary GPU - error: Could not load GPU driver

You must edit /etc/bumblebee/bumblebee.conf using your preferred editor as root, and change "KernelDriver=nvidia" to "KernelDriver=nvidia-current", then restart the bumblebee daemon, i.e.

 sudo service bumblebeed restart 

(Refer to Debian Bug 717687 for a brief explanation.)

- If optirun returns the following error:

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected

You may have to set the BusID manually, in /etc/bumblebee/xorg.conf.nvidia. To get the BusID, run lspci | egrep 'VGA|3D' in a terminal. Refer to the comments in that file for further instructions.

- If optirun returns the following error (756522):

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied

You have to append the following section to /etc/bumblebee/xorg.conf.nvidia:

Section "Screen"
    Identifier "Default Screen"
    Device "DiscreteNvidia"
EndSection

You might also try downgrading libdrm from 2.4.58 to 2.4.56. That might fix the Permission denied errors in Jessie.

- If optirun errors out and dmesg reports that your GPU has "fallen off the bus" on Linux >= 3.10, either stick with an older kernel version (<= 3.9), or add rcutree.rcu_idle_gp_delay=1 to your grub command line (in /etc/default/grub, then run update-grub and reboot) as a workaround.

This is a known problem upstream and suspected to be an issue with the proprietary nvidia driver. Refer to Bumblebee github issue #455.

- If optirun returns the following error: [ERROR]Cannot access secondary GPU - error: Could not enable discrete graphics card and dmesg states: Refused to change power state, currently in D3, you have probably issue with ACPI (encountered on Dell laptops). One solution is to prevent nvidia card to go to failed sleep state. Set PMMethod=none in /etc/bumblebee/bumblebee.conf. To keep the powersaving capabilities, you can try to tweak kernel parameters as noted below for Dell XPS 15 in bumblebee github link and here issue #140.

- If your laptop locks up during boot when starting the graphical display you may need to add a kernel parameter to set acpi_osi="!Windows 2015" or some variant. This is a known ACPI problem with 2017 Dell XPS 15 and others. Refer to Bumblebee github issue #764.

- If your laptop freezes during boot in Debian Buster when starting the graphical display, you may try workaround where you force Bumblebee service to start after display manager issue #1036

References


CategoryHardware