AA_hase-igel_123rf-9563882_EricIsselee.jpg

© Eric Isselée, 123rf.com

Ungleiches Paar

Optimus-Grafikkarten unter Linux

21.07.2011
Leistung nach Bedarf, das verspricht die Optimus-Technologie von Nvidia. Aber die Notebook-Hersteller boykottieren Linux – darum hilft sich die Community selbst.

Im Februar 2010 stellte Nvidia die Technologie Optimus offiziell vor [1]. Die Idee dahinter besticht: Moderne Laptops verwenden häufig neben der eingebauten Grafikkarte (dGPU) recht potente Hardware im Chipsatz (iGPU). Durch geschicktes Verschalten und mit passenden Treibern wechselt das System je nach Bedarf für den Benutzer unbemerkt zwischen beiden hin und her. Die dGPU übergibt im Akkubetrieb an die iGPU, was die Laufzeit merklich verlängert [2].

Mittlerweile haben andere Hersteller die Idee von Optimus [3] übernommen und so populär gemacht: In den meisten neuen Notebooks mit einer der dGPU/iGPU-Kombinationen Intel/Nvidia, Nvidia/Nvidia, Intel/ATI und ATI/ATI findet sich heute Optimus. Allerdings unterstützen die Notebook-Hersteller bisher Linux nicht, und auch der X-Server und der freie Treiber Nouveau vermögen Optimus-verschaltete Hardware bisher nicht richtig anzusprechen.

Warnhinweis

Die meisten der in diesem Artikel vorgestellten Operationen setzen Root-Rechte voraus und greifen tief ins System ein. Es empfiehlt sich, ein Rettungssystem wie Grml auf CD oder auf USB-Stick bereitzulegen. Auf jeden Fall aber sollten Sie vor allen Experimenten ein Backup des Systems machen.

Experimentelles

Als ein typischer Laptop mit Optimus-Grafik dient in unserem Test ein Schenker M4S XMG A700 mit Intel-Core-i5-Prozessor und Nvidia GT 425M (Abbildung 1). Dieses Gerät erlaubt im Gegensatz zu anderen Modellen nicht mehr, das Optimus-Setting über eine BIOS-Einstellung zu beeinflussen – was darauf hinweist, dass die dGPU nicht mehr physikalisch mit den Grafikausgängen zusammenhängt [4].

Abbildung 1: Attraktiv für Linux-Anwender: Schenker verkauft seine Laptops wie das M4S XMG A700 ohne Betriebssystem.

Mit einer aktuellen Distribution – wir verwendeten Linux Mint Debian Edition, das nach einem Update mit aktueller Software wie Kernel 2.6.38-2 und X.org 1.10.1 läuft – zeigt das Testmodell folgendes, Optimus-typisches Verhalten: Alles funktioniert ohne Probleme, aber ein Blick in die Logdatei des X-Servers (/var/log/Xorg.0.log) zeigt, was beim Hochfahren geschehen ist: Das System erkennt beide Grafikeinheiten und wählt grundsätzlich den Intel-Treiber aus.

Dass es die Nvidia-Karte nicht anspricht, zeigt sich zum Beispiel dadurch, dass die Software Nvidia-settings abbricht. Es läge die Idee nahe, den X-Server zum Laden des freien Treibers (nouveau) oder auch des proprietären Treibers (nvidia) zu zwingen, indem Sie ein entsprechendes Setting mit der Bus-ID der anderen Grafikeinheit in /etc/X11/xorg.conf oder unter /usr/share/X11/xorg.conf.d/ anlegen. Jeder entsprechende Versuch scheitert aber, indem der X-Server beim Hochfahren abbricht (No screens found) – ganz so einfach funktioniert es also nicht.

Unter Linux gibt es mittlerweile die Möglichkeit, die unbenutzte dGPU komplett abzuschalten, was einen maßgeblichen Zuwachs an Laufzeit im Akkubetrieb erbringt. Darüber hinaus klappt das manuelle Umschalten zwischen den GPUs. Optimus auch unter Linux automatisch im fließenden Übergang mit Abschaltung zu nutzen, so wie es eigentlich vorgesehen ist und auf aktuellen Windows-Systemen läuft, steckt jedoch noch in einer sehr frühen Phase der Entwicklung (siehe Kasten "Virtuell").

Wer sich mit Optimus auseinandersetzt, für den bieten vor allem das Blog Linux-Hybrid-Graphics [5] und die Mailing-Liste Hybrid Graphics Linux auf Launchpad [6] Informationen und Kontakt zu Mitstreitern. Außerdem existiert seit kurzem ein aufgeräumtes Wiki zu dem Thema [7].

Via Kernel

Es gibt mittlerweile ein spezielles Kernel-Modul, mit dem Sie mithilfe von ACPI-Methoden die dGPU ganz abschalten [8]. Dafür laden Sie zunächst das Programmverzeichnis acpi_call mittels des folgenden Aufrufs herunter:

$ git clone http://github.com/mkottman/acpi_call.git

Das setzt das Paket git voraus. Wechseln Sie in das Verzeichnis, kompilieren Sie das Modul mit make, laden Sie es mittels insmod acpi_call.ko, und sehen Sie dann mit ./test_off.sh nach, ob auf der Hardware eine der vorgesehenen Methoden funktioniert. Auf dem Testmodell war das nicht der Fall.

Es ist hierbei auf jeden Fall eine gute Idee, vorher das Kernel-Modul des Nouveau-Treibers zu deaktivieren, indem Sie der Datei /etc/modprobe.d/blacklist.conf die Zeile blacklist nouveau am Ende hinzufügen und anschließend neu starten. Funktioniert eine der Methoden, konfigurieren Sie das dauerhaft [9]. Die Entwickler nehmen Fehlerberichte für die Weiterentwicklung auf Launchpad entgegen [10].

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...