[[Vorlage(Archiviert, "Die Entwicklung des Projekts wurde 2013 eingestellt.")]] [[Vorlage(Fortgeschritten)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Paketquellen_freischalten/PPA: Ein PPA verwenden] [:Benutzer_und_Gruppen:Benutzer und Gruppen verwalten] [:Editor: Einen Editor öffnen] [:sudo:Root-Rechte] }}} [[Inhaltsverzeichnis(2)]] [[Bild(./bumblebee-logo.png, 64, left)]] [launchpad:~bumblebee:Bumblebee] {en} ist eine Softwarelösung für Laptops mit einer [wikipedia:Nvidia_Optimus:Nvidia-Optimus]-Hybridgrafikkarte. Optimus ist eine Technologie von Nvidia, die auf zwei [wikipedia:Grafikprozessor:Grafikprozessoren] (GPU) beruht, mit dem Ziel, die Leistungsfähigkeit und die Akkulaufzeit zu erhöhen. Der "normale" Desktop läuft über die sparsame Intel-GPU, nur bei Bedarf wird die leistungsstärkere Nvidia-GPU genutzt. Bumblebee richtet einen 2. X-Server für die Nvidia-GPU ein, dessen Bild dann mittels `primus` an die Intel-GPU zum 1. X-Server übertragen wird. Diese Übertragung ist verlustbehaftet. Bumblebee installiert den proprietären Nvidia-Treiber, ohne den freien Intel-Treiber für die Intel-GPU zu beeinträchtigen. Als Alternative kann [:Hybrid-Grafikkarten/PRIME:nvidia-prime] angesehen werden. Da die Weiterentwicklung von Bumblebee seit 2013 ruht, sollte man bei Neuinstallationen nvidia-prime bevorzugen. = Vor der Installation = Ein eventuell im BIOS vorhandener Schalter für die GPUs ist auf "switchable" zu stellen. Bevor die Installation gestartet wird, muss eine eventuell vorhandene '''xorg.conf''' in '''/etc/X11/''' entfernt werden; `bumblebee` verwendet eine eigene '''xorg.conf.nvidia''' in '''/etc/bumblebee/'''. = Installation = Bumblebee ist ab Ubuntu [:14.04:] in den Paketquellen verfügbar [1]: {{{#!vorlage Paketinstallation bumblebee, universe bumblebee-nvidia, universe bbswitch-dkms, universe primus, universe }}} Dann muss nur noch die [#Konfiguration_apassen Konfiguration angepasst] werden. == Fremdquelle == Alternativ stellen die Bumblebee-Entwickler bis [:15.10:Ubuntu 15.10] ein PPA [2] bereit. [[Vorlage(PPA, bumblebee, stable)]] Nach dem Aktualisieren der Paketquellen sind folgende Pakete zu installieren: {{{#!vorlage Paketinstallation bumblebee, ppa bumblebee-nvidia bbswitch-dkms primus }}} Um 32-Bit Anwendungen wie z.B. [:Wine:] auch auf 64-bit-Systemen verwenden zu können, müssen auch die Pakete `virtualgl-libs:i386`, `libgl1-mesa-glx:i386` und `libc6:i386` installiert werden. == Konfiguration anpassen == Nach der Installation muss noch '''/etc/bumblebee/bumblebee.conf''' angepasst und mit Root-Rechten die folgenden Zeilen geändert werden[4][5]: {{{ Driver=nvidia […] ## Section with nvidia driver specific options, only parsed if Driver=nvidia [driver-nvidia] # Module name to load, defaults to Driver if empty or unset KernelDriver=nvidia-[mark]xxx[/mark] PMMethod=auto # colon-separated path to the nvidia libraries LibraryPath=/usr/lib/nvidia-[mark]xxx[/mark]:/usr/lib32/nvidia-[mark]xxx[/mark] # comma-separated path of the directory containing nvidia_drv.so and the # default Xorg modules path XorgModulePath=/usr/lib/nvidia-[mark]xxx[/mark]/xorg,/usr/lib/xorg/modules XorgConfFile=/etc/bumblebee/xorg.conf.nvidia }}} Dabei ist [mark]xxx[/mark] geweils durch die installierte Treiberversion zu ersetzen (z.B. 352 oder 340-updates). Nun noch neu starten und bumblebee sollte funktionieren. = Start einer Anwendung mit Bumblebee = Nach einem Neustart des Rechners können Anwendungen auf NVIDIA-Grafik durch das Präfix `optirun` gestartet werden. Beispiel: {{{#!vorlage Befehl optirun glxgears }}} Mann kann einen [:Menüeditor:] nutzen, um die entsprechenden Starter anzupassen. Oder man tippt den Befehl durch Aufruf der Tastenkombination [[Vorlage(Tasten, alt+f2)]] ein. So bleibt der Befehl gespeichert und liegt für den nächsten Programmaufruf bereits vor. = Power-Management = `bumblebee` deaktiviert die Nvidia-Karte automatisch, um Strom zu sparen, wenn sie nicht durch eine "`optirun`" Anwendung in Benutzung ist, was die Laufzeit des Akkus deutlich erhöht. Um den Status der Nvidia-GPU zu prüfen: {{{#!vorlage Befehl sudo cat /proc/acpi/bbswitch }}} = Nvidia-Konfigurations GUI = Wenn man das Konfigurations-Werkzeug [:nvidia-settings:] von Nvidia nutzen möchte, muss man diesem mitteilen, den im Hintergrund laufenden X-Server anzusprechen. {{{#!vorlage Befehl optirun nvidia-settings -c :8 }}} Nutzt man die Option "Save To X Configuration File", muß man anschließend die dadurch in '''/etc/X11''' erstellte '''xorg.conf''' nach '''/etc/bumblebee''' als '''xorg.conf.nvidia''' verschieben, da sonst Probleme beim nächsten Bootvorgang auftreten: {{{#!vorlage Befehl sudo mv /etc/X11/xorg.conf /etc/bumblebee/xorg.conf.nvidia }}} = Antialiasing= Da die Nvidia-GPU die Frames in den [https://wiki.delphigl.com/index.php/Tutorial_Pixelbuffer Pixelbuffer] {en} mit eigenem Renderkontext rendert, haben Antialiasing-Einstellungen in nvidia-settings keine Wirkung. Um eine Applikation mit Kantenglättung zu starten, kann man z.B. den Befehl: {{{#!vorlage Befehl VGL_SAMPLES=16 optirun glxgears }}} verwenden und den Grad des Multisamplings (im Beispiel 16) festlegen. = Problembehebung = == Allgemein == Auf manchen Optimus-Laptops ist eine Installation von Ubuntu oder das Booten nach Installation von der [:Alternate-CD:] nur möglich, wenn der [:Grafikkarten/Nvidia/nouveau:nouveau]-Treiber deaktiviert wird. Dazu nutzt man die [:Booten:Bootoption] `nouveau.blacklist=yes`, wie auch im Abschnitt [:Booten#Treiber-deaktivieren:Treiber deaktivieren] erläutert. Nach der Installation von '''bumblebee-nvidia''' ist diese Bootoption nicht mehr unbedingt nötig, da das Paket den nouveau-Treiber selbst "blacklistet", also deaktiviert. == Cannot access secondary GPU == Es kann passieren, dass beim Start einer Anwendung mit Bumblebee die folgende Fehlermeldung erscheint: [[Vorlage(code,"[ 2609.645273] [ERROR]Cannot access secondary GPU - error: Could not load GPU driver [ 2609.645612] [ERROR]Aborting because fallback start is disabled.")]] In diesem Fall muss noch die [#Konfiguration_anpassen Konfiguration angepasst] werden. == Multimonitorbetrieb == Bei vielen Optimus-Laptops sind die HDMI-/VGA-Ausgänge fest mit der Nvidia-GPU verdrahtet. In diesem Fall sollte man den Displayport, bei Bedarf mittels HDMI-Adapter, testen. Eine befriedigende Softwarelösung existiert z. Zt. nicht. Möglich ist es u.U., HDMI- bzw. VGA-Ausgänge zu [https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup nutzen] {en}, mit der Einschränkung, dass das Laptop-Display nicht mehr angesprochen werden kann. == Keine grafische Oberfläche nach Bumblebee-Installation auf Ubuntu 12.04 == Sollte der X-Server nicht mehr starten, kann dies mit einer Neuinstallation diverser Pakete im [:Recovery Modus:] behoben werden: {{{#!vorlage Befehl apt-get install xserver-xorg-video-intel xinit ubuntu-desktop }}} == Thinkpad T420s, DELL Latitude E6520, (eventuell auch andere Modelle betreffend) == Befinden sich im Ordner '''/usr/share/X11/xorg.conf.d''' Konfigurationsdateien wie z.B. * '''10-nvidia-current-latitude-e6530.conf''' * '''10-nvidia-current-updates-latitude-e6530.conf''' * '''10-nvidia-current-thinkpad-t420s.conf''' * '''10-nvidia-current-updates-thinkpad-t420s.conf''' müssen diese umbenannt werden, z.B. in: '''10-nvidia-current-latitude-e6530.conf.old''', damit das System diese nicht mehr berücksichtigt und Bumblebee funktioniert. == Probleme bei der Benutzung von Bumblebee mit Ubuntu 14.04 == Bei der Nutzung von Bumblebee mit Ubuntu 14.04 können Probleme auftreten. Unter anderem ist folgende Fehlermeldung beim Start von Programmen sehr häufig zu finden: {{{ [ 428.933119] [INFO]Response: No - error: [XORG] (EE) intel(0): [drm] failed to set drm interface version: Permission denied [13]. [ 428.933181] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) intel(0): [drm] failed to set drm interface version: Permission denied [13]. }}} Um dieses Problem zu Lösen gibt es folgenden Ansatz: Zunächst editiert man '''/etc/bumblebee/xorg.conf.nvidia''' mit Root-Rechten[4][5]und fügt folgendes ganz oben in der Datei ein: {{{#!code Section "Screen" Identifier "Default Screen" Device "DiscreteNvidia" EndSection }}} Dann werden die '''nvidia-331-updates''' Treiber installiert: {{{#!vorlage Befehl sudo apt-get install nvidia-331-updates }}} Alternativ kann man natürlich auch '''nvidia-304''' oder '''nvidia-319''' nutzen, dies kann aber zu Problemen führen. Die oben genannte Methode mit '''nvidia-331-updates''' Treibern funktioniert bisher sehr gut! == Nvidia Treiber wird standardmäßig geladen oder Inteltreiber ohne glx mit einem Nvidia Treiber > 331 == Sollte man einen sehr aktuellen Treiber wie z.B. nvidia-346 nutzen, kann es passieren, dass bumblebee beim Systemstart nicht ordnungsgemäß startet. In dem Fall muss die Datei '''/etc/modprobe.d/bumblebee.conf''' mit root-Rechten [5] geöffnet [4] werden und analog zu den schon vorhandenen Zeilen die Vier Zeilen {{{#!code # xxx blacklist nvidia-xxx blacklist nvidia-xxx-updates blacklist nvidia-experimental-xxx }}} hinzugefügt werden, wobei xxx durch die zu nutzende Treiberversion (z.B. 346) ersetzt wird. Danach muss das System neu gestartet werden. = Deinstallation = Bumblebee wird bei Bedarf über die Paketverwaltung entfernt, z.B. mit {{{#!vorlage Befehl sudo apt-get purge bumblebee sudo rm /etc/modprobe.d/bumblebee.conf }}} = Links = * [https://bumblebee-project.org/ bumblebee-project] {en} * [github:amonakov/primus#faq:Primus FAQ] {en} * [http://www.webupd8.org/2013/04/set-up-bumblebee-with-bumblebee.html Set Up Bumblebee With Bumblebee Configurator GUI] {en} * [https://linux-hybrid-graphics.blogspot.com/ Blog Linux-Hybrid-Graphics] {en} seit 2009 aktiv * [https://hybrid-graphics-linux.tuxfamily.org/index.php?title=Main_Page Hybrid-Graphics-Linux] {en} - Wiki bei tuxfamily.org #tag: Grafikkarten, Hardware, Installation, nvidia