Wer einen Laptop mit Optimus-Grafik hat – also eine Intel-Grafik, die den Bildschirm steuert und für alle „normalen“ Darstellungsaufgaben zuständig ist und dazu eine Nvidia Grafik (ich habe z.B. die GeForce GTX 670 M), die für schnelle 3D-Anwendungen und Spiele zuständig ist – hat(te) unter Linux oft Probleme. Meist läuft nur die Intel-Grafik und der Nvidia-Teil ist nicht ansprechbar.
Zwischenzeitlich steht aber mit DRI_PRIME eine Methode zur Verfügung, die es ermöglicht diese sogeannten Hybrid-Grafiken als schnelle OpenGL-Renderer zu nutzen. Um dies zu nutzen wie folgt vorgehen:
$xrandr --listproviders
die Ausgabe sollte dann etwa wie folgt aussehen
Providers: number : 3 Provider 0: id: 0x8b cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 2 name:Intel Provider 1: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 2 name:nouveau Provider 2: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 2 name:nouveau
Danach folgenden Befehl eingeben:
xrandr --setprovideroffloadsink nouveau Intel
Zur Überprüfung, ob alles geklappt hat, folgenden Befehl eingeben:
$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
Es sollte dann folgende Ausgabe erscheinen
OpenGL renderer string: Gallium 0.4 on NVCE
Programme, die die Nvidia-Grafik nutzen sollen, können nun durch Voranstellen von DRI_PRIME=1 gestartet werden, z.B.
DRI_PRIME=1 glxgears