[graphique] nvidia + intel tearing / optimus

Questions et astuces concernant l'installation et la configuration d'archlinux
dromadeuse
newbie
Messages : 9
Inscription : mar. 10 déc. 2019, 15:34

[graphique] nvidia + intel tearing / optimus

Message par dromadeuse »

Bonjour,
Ça fait quelques semaines que j'essaye d'avoir une config graphique stable sur mon arch.
C'est sur un laptop DELL avec cette conf :

Code : Tout sélectionner

lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile)
01:00.0 VGA compatible controller: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] (rev a1)
Je tourne sous KDE plasma avec sddm.

J'ai installé optimus qui gère bien le switch entre les différents modes (intel/nvidia/hybrid).
Mais j'ai des soucis dans tous les modes :

- intel :
Lorsque sur je verrouille ma session et que je la déverrouille je me retrouve avec du tearing et des freeze aléatoires de tout le graphique (sauf la souris), qui défreeze quand je passe ma souris sur la barre des taches.

- nvidia :
Du tearing tout le temps

- hybrid :
Jamais de tearing mais pas de dual screen et de temps en temps tout le système freeze en affichant une sorte d'arc en ciel RGB sur tout l'écran.

Code : Tout sélectionner

cat /etc/optimus-manager/optimus-manager.conf
[intel]
DRI=3
accel=sna
driver=intel
modeset=no
tearfree=yes

[nvidia]
DPI=96
PAT=yes
ignore_abi=yes
modeset=yes
options=triple_buffer

[optimus]
auto_logout=yes
pci_power_control=no
pci_remove=no
pci_reset=no
switching=none

Code : Tout sélectionner

cat /etc/modprobe.d/blacklist.conf
blacklist nouveau

cat /etc/modprobe.d/i915.conf
options i915 enable_guc=2

cat /etc/modprobe.d/nvidia-drm-modeset.conf
options nvidia-drm modeset=1

cat /etc/default/grub | grep GRUB_CMDLINE_LINUX_DEFAULT
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 nvidia-drm.modeset=1 intel_iommu=off"

cat /etc/mkinitcpio.conf
MODULES=(i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm)
BINARIES=()
FILES="/etc/modprobe.d/nvidia-drm-modeset.conf"
HOOKS=(base udev autodetect modconf block filesystems keyboard fsck)

cat /usr/share/sddm
#!/bin/sh
# Xsetup - run as root before the login dialog appears

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto
Comme vous pouvez le voir j'ai essayé pas mal de trucs...

Une idée ?
Merci

Dromadeuse
laurent85
Elfe
Messages : 951
Inscription : mar. 16 oct. 2018, 21:05

Re: [graphique] nvidia + intel tearing / optimus

Message par laurent85 »

Bonjour,
xf86-video-intel n'est plus vraiment maintenu depuis des années, essaie sans désinstalle-le, modesetting marche bien avec intel.

nvidia c'est pas mieux sans le Tripple buffer ?
Pourquoi le ignore_abi=yes ?
dromadeuse
newbie
Messages : 9
Inscription : mar. 10 déc. 2019, 15:34

Re: [graphique] nvidia + intel tearing / optimus

Message par dromadeuse »

Merci pour ton aide !

J'avais déjà essayé avec modesetting. Mais j'ai du tearing avec.
La seule conf qui fonctionne c'est avec xf86-video-intel...

Pas de dual screen avec modesetting.
Ça change rien avec ignore_abi=no et sans le tripple buffer. C'était un essai pour virer le tearing.
laurent85
Elfe
Messages : 951
Inscription : mar. 16 oct. 2018, 21:05

Re: [graphique] nvidia + intel tearing / optimus

Message par laurent85 »

modesetting gère le multi head.

J'avais zappé le multi head de ta config, la synchro vblank nvidia c'est 1 écran, regarde si ça peut aider https://wiki.archlinux.org/index.php/NV ... g_TwinView
dromadeuse
newbie
Messages : 9
Inscription : mar. 10 déc. 2019, 15:34

Re: [graphique] nvidia + intel tearing / optimus

Message par dromadeuse »

Non, toujours pas. (encore du tearing)

Les log de Xorg : https://pastebin.com/rknPEAK1

/etc/X11/xorg.conf.d/10-optimus.conf :

Code : Tout sélectionner

Section "Files"
        ModulePath "/usr/lib/nvidia"
        ModulePath "/usr/lib32/nvidia"
        ModulePath "/usr/lib32/nvidia/xorg/modules"
        ModulePath "/usr/lib32/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg/modules"
        ModulePath "/usr/lib64/nvidia/xorg"
        ModulePath "/usr/lib64/xorg/modules"
EndSection

Section "ServerLayout"
        Identifier "layout"
        Screen 0 "nvidia"
        Inactive "intel"
EndSection

Section "Device"
        Identifier "nvidia"
        Driver "nvidia"
        BusID "PCI:1:0:0"
        Option "Coolbits" "28"
EndSection

Section "Screen"
        Identifier "nvidia"
        Device "nvidia"
        Option "AllowEmptyInitialConfiguration"
EndSection

Section "Device"
        Identifier "intel"
        Driver "modesetting"
        BusID "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "intel"
        Device "intel"
EndSection
Dans cette config j'ai demandé que la carte nvidia, pas l'hybrid.
Mais modesetting se charge quand même ?
laurent85
Elfe
Messages : 951
Inscription : mar. 16 oct. 2018, 21:05

Re: [graphique] nvidia + intel tearing / optimus

Message par laurent85 »

Si ça marche sans il faut enlever des paramètres de démarrage linux intel_iommu=off
dromadeuse a écrit : mer. 11 déc. 2019, 14:36 Mais modesetting se charge quand même ?
Je suppose que c'est le comportement normal d'Xorg de charger le pilote des périphériques qu'il détecte.

Ton problème dépasse mes compétences. En plus si l'autoconfiguration d'optimus-manager ne fait pas le job il faut probablement s'en passer pour affiner le souci de tearing avec nvidia, ce qui va probablement te priver de la possibilité de basculer entre les 2 cartes automatiquement.
dromadeuse
newbie
Messages : 9
Inscription : mar. 10 déc. 2019, 15:34

Re: [graphique] nvidia + intel tearing / optimus

Message par dromadeuse »

Si c'est possible d'utiliser que la carte nvidia ça ne me dérange pas.
Mon ordi est tout le temps branché, pas de soucis de consommation batterie.
dromadeuse
newbie
Messages : 9
Inscription : mar. 10 déc. 2019, 15:34

Re: [graphique] nvidia + intel tearing / optimus

Message par dromadeuse »

laurent85
Elfe
Messages : 951
Inscription : mar. 16 oct. 2018, 21:05

Re: [graphique] nvidia + intel tearing / optimus

Message par laurent85 »

Essaie le noyau linux-lts et nvidia-lts
Répondre