Abnaxos
2017-01-19, 12:07:52
Wie im Thread "Was müsste getan werden, damit Linux mehr Marktanteile auf Consumer-PCs erlangt?" beschrieben, habe ich so meine Krämpfe mit dem DualMonitor-Setup mit Intel und NVidia auf meinem Laptop.
Ich bin wieder in Bastellaune. KDE habe ich momentan ganz abgeschossen und versuche mich jetzt mit i3. Einen Compositor brauche ich dennoch, das ist jetzt Compton (bei i3 sieht man recht schlecht, welches Fenster aktiv ist → inaktive Fenster abdunkeln → Compton).
Die Lösung, nur NVidia zu verwenden, finde ich aus folgenden Gründen suboptimal:
Der proprietäre NVidia-Treiber gehört boykottiert
Unerträgliches Tearing bei jeglichen Videos
Hitzeentwicklung und Stromverbrauch
Kernel tainted
(zwei Monitore mit nouveau funktioniert schlicht nicht)
Das Problem ist, dass die iGPU nur den Laptop-Bildschirm verwenden kann, für HDMI/DP brauche ich die NVidia-dGPU.
Ich versuche nochmal, die Sache mit PRIME-Offloading hinzukriegen, siehe Arch-Wiki (https://wiki.archlinux.org/index.php/PRIME#Reverse_PRIME). Leider komme ich nirgends hin.
Wenn ich für Intel den modesetting-Treiber verwende, krallt er sich beide GPUs, der Output von "xrandr --listproviders":
Providers: number : 2
Provider 0: id: 0x7a cap: 0x3, Source Output, Sink Output crtcs: 3 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x46 cap: 0x3, Source Output, Sink Output crtcs: 4 outputs: 3 associated providers: 1 name:modesetting
Ein "xrandr --setprovideroutputsource 1 0" führt zu nichts. In diesem Setup kann ich grundsätzlich mit den zweiten Monitor arbeiten, aber es ist fürchterlich langsam und führt teilweise zu einem Flackern des Mauszeigers (das kann man auf ein erträgliches Mass reduzieren, indem man Compton mit dem Xrender-Backend betreibt). Ein glxspheres auf dem zweiten Monitor (nouveau) kommt auf knapp 1 (eins) FPS, auf dem Laptop-Monitor (Intel) läuft es normal.
Wenn ich den intel-Treiber einstelle, geht es erstmal in die richtige Richtung. Dann beschliesst X.org jedoch, dass im aktuellen Setup die NVidia-GPU gar nicht benutzt wird. Im Log steht dann: UnloadModule "nouveau". Das Ergebnis ist, dass ich nur noch den Intel-Provider habe und damit kein Offloading hinkriege.
Hier mal meine /etc/X11/xorg.conf.d/20-prime.conf (die auskommentierten Sachen habe ich extra stehen lassen, damit man sieht, was ich schon alles für Experimente gemacht habe:
Section "Device"
Identifier "intel"
Driver "modesetting" # bzw. "intel"
BusID "PCI:0:2:0"
Option "SWcursor" "off"
# Option "DRI" "2"
# Option "AccelMethod" "uxa"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nouveau" # bzw. "nvidia"
BusID "PCI:1:0:0"
EndSection
#Section "Screen"
# Identifier "intel"
# Device "intel"
#EndSection
#Section "Screen"
# Identifier "nvidia"
# Device "nvidia"
#EndSection
#Section "ServerLayout"
# Identifier "layout"
# Screen 0 "intel"
# Inactive "nvidia"
#EndSection
Die Distro ist OpenSUSE 42.2.
Das Ziel ist es, alles Rendering mit der iGPU zu machen und die dGPU nur zu verwenden, um die HDMI/DP-Outputs verwenden zu können (Rerverse PRIME Offloading). Ideen?
Ich bin wieder in Bastellaune. KDE habe ich momentan ganz abgeschossen und versuche mich jetzt mit i3. Einen Compositor brauche ich dennoch, das ist jetzt Compton (bei i3 sieht man recht schlecht, welches Fenster aktiv ist → inaktive Fenster abdunkeln → Compton).
Die Lösung, nur NVidia zu verwenden, finde ich aus folgenden Gründen suboptimal:
Der proprietäre NVidia-Treiber gehört boykottiert
Unerträgliches Tearing bei jeglichen Videos
Hitzeentwicklung und Stromverbrauch
Kernel tainted
(zwei Monitore mit nouveau funktioniert schlicht nicht)
Das Problem ist, dass die iGPU nur den Laptop-Bildschirm verwenden kann, für HDMI/DP brauche ich die NVidia-dGPU.
Ich versuche nochmal, die Sache mit PRIME-Offloading hinzukriegen, siehe Arch-Wiki (https://wiki.archlinux.org/index.php/PRIME#Reverse_PRIME). Leider komme ich nirgends hin.
Wenn ich für Intel den modesetting-Treiber verwende, krallt er sich beide GPUs, der Output von "xrandr --listproviders":
Providers: number : 2
Provider 0: id: 0x7a cap: 0x3, Source Output, Sink Output crtcs: 3 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x46 cap: 0x3, Source Output, Sink Output crtcs: 4 outputs: 3 associated providers: 1 name:modesetting
Ein "xrandr --setprovideroutputsource 1 0" führt zu nichts. In diesem Setup kann ich grundsätzlich mit den zweiten Monitor arbeiten, aber es ist fürchterlich langsam und führt teilweise zu einem Flackern des Mauszeigers (das kann man auf ein erträgliches Mass reduzieren, indem man Compton mit dem Xrender-Backend betreibt). Ein glxspheres auf dem zweiten Monitor (nouveau) kommt auf knapp 1 (eins) FPS, auf dem Laptop-Monitor (Intel) läuft es normal.
Wenn ich den intel-Treiber einstelle, geht es erstmal in die richtige Richtung. Dann beschliesst X.org jedoch, dass im aktuellen Setup die NVidia-GPU gar nicht benutzt wird. Im Log steht dann: UnloadModule "nouveau". Das Ergebnis ist, dass ich nur noch den Intel-Provider habe und damit kein Offloading hinkriege.
Hier mal meine /etc/X11/xorg.conf.d/20-prime.conf (die auskommentierten Sachen habe ich extra stehen lassen, damit man sieht, was ich schon alles für Experimente gemacht habe:
Section "Device"
Identifier "intel"
Driver "modesetting" # bzw. "intel"
BusID "PCI:0:2:0"
Option "SWcursor" "off"
# Option "DRI" "2"
# Option "AccelMethod" "uxa"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nouveau" # bzw. "nvidia"
BusID "PCI:1:0:0"
EndSection
#Section "Screen"
# Identifier "intel"
# Device "intel"
#EndSection
#Section "Screen"
# Identifier "nvidia"
# Device "nvidia"
#EndSection
#Section "ServerLayout"
# Identifier "layout"
# Screen 0 "intel"
# Inactive "nvidia"
#EndSection
Die Distro ist OpenSUSE 42.2.
Das Ziel ist es, alles Rendering mit der iGPU zu machen und die dGPU nur zu verwenden, um die HDMI/DP-Outputs verwenden zu können (Rerverse PRIME Offloading). Ideen?