web-dev-qa-db-fra.com

Pilotes Nvidia - Impossible de cocher "Forcer le pipeline de composition complète"

J'ai lu que pour éviter de déchirer l'écran, je devais activer l'option "Forcer la composition complète du pipeline" sur les paramètres nvidia [¹]. Cependant, cette option ne semble pas être disponible dans mon système.

enter image description here

enter image description here

Je pensais que nvidia-settings avait peut-être été retenu, mais selon le billet de blog ci-dessous, cette option devrait être disponible dans cette version:

enter image description here

Est-ce que je manque quelque chose?

Merci

[¹] https://www.gamingonlinux.com/articles/how-to-an-update-on-fixing-screen-tearing-on-linux-with-an-nvidia-gpu.8892 =

4
Filipe Dias

Je ressens ta douleur. J'ai toujours du mal à essayer de comprendre comment me débarrasser de mes ordinateurs portables dotés à la fois d'un GPU Dédié Nvidia et d'un GPU Intégré.

Je vais tenter ma chance dans le noir et deviner que votre système est un système PRIME, auquel cas les options du pipeline de composition ne seront pas disponibles (même les ajouter manuellement à votre fichier xorg.conf ne fonctionnera pas - il faudra probablement que votre écran devienne sombre).

Je pense que ce que vous recherchez (encore une fois, devinez) est synchronisation PRIME - c'est la nouvelle façon de Nvidia de synchroniser les écrans.

Essaye ça:

  • Créez un fichier dans votre répertoire /etc/modprobe.d appelé zz-nvidia-tearing.conf.
  • Ajoutez-y la ligne suivante: options nvidia_387_drm modeset=1 (remplacez "387" par la version de votre pilote).
  • Depuis le terminal: Sudo update-initramfs -u
  • Redémarrez.
  • Vérifiez que la synchronisation PRIME est activée: xrandr --prop | less

Vous devriez voir quelque chose comme:

Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 16384 x 16384
eDP-1-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
        EDID: 
                00ffffffffffff0030e4210500000000
                001a0104951f1178ea9d35945c558f29
                1e505400000001010101010101010101
                0101010101012e3680a070381f403020
                350035ae1000001a542b80a070381f40
                3020350035ae1000001a000000fe004c
                4720446973706c61790a2020000000fe
                004c503134305746362d535042360075
        PRIME Synchronization: 1 

La ligne importante est la dernière ligne. Si, pour une raison quelconque, votre synchronisation PRIME n’est toujours pas activée (c'est-à-dire définie sur "1"), essayez de modifier la dernière ligne de votre /etc/modprobe.d/nvidia-graphics-drivers.conf - remplacez-la par:

options nvidia_387_drm modeset=1

(encore une fois, changer évidemment "387" pour la version de votre pilote Nvidia installé).

N'oubliez pas de courir:

Sudo update-initramfs -u

après avoir apporté des modifications à n’importe quel fichier de /etc/modprobe.d.

Si cela ne fonctionne toujours pas (ce qui devrait être le cas, tant que vous utilisez le pilote Nvidia version 370 ou supérieure), vous pouvez alors ajouter les éléments suivants à votre GRUB_CMDLINE_LINUX_DEFAULT dans /etc/default/grub:

nvidia-drm.modeset=1

Je ne sais pas à quoi ressemble votre GRUB_CMDLINE_LINUX_DEFAULT, mais après avoir ajouté la ligne ci-dessus, il pourrait ressembler à ceci:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"

Je trouve étonnant que Nvidia n’active pas PRIME Sync par défaut sur le matériel qui le supporte. La raison donnée est parce que cela ne fonctionne pas bien avec SLI - mais combien d'utilisateurs de Linux utilisent réellement SLI? Je n'ai pas encore vu.

Si vous avez d'autres questions, demandez plus loin, j'essaierai d'y répondre.

Bonne chance!

2
Vanessa Deagan

Non, vous devez juste enregistrer la configuration X quelque part ... alors seul le réglage de la composition sera poursuivi pour le prochain redémarrage ... Cliquez donc sur "Enregistrer dans le fichier de configuration X" avec succès ... c'est tout.

0
MPK99

Dans la dernière version (au moment de l'écriture) des pilotes binaires 430.26 de Nvidia, il existe une telle option (bien sûr, je suppose ici que le pilote est correctement installé et fonctionne):

enter image description here

Mais s'il ne s'affiche pas pour vous pour une raison quelconque, il existe un autre moyen de l'activer via le fichier xorg.conf.

Voici à quoi cela ressemble dans mon système:

Editez le fichier /etc/X11/xorg.conf et le code suivant dans la section Screen (notez qu'il y aura plus d'options dans la vôtre):

Section "Screen"
    Option "metamodes" "3440x1440_75 +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On};"
EndSection

Enregistrez puis redémarrez le système.

Une autre possibilité consiste à utiliser nvidia-settings:

$ nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceCompositionPipeline=On, ForceFullCompositionPipeline=On }"
0

En tant qu'utilisateur Ubuntu, j'ai rencontré ce problème épouvantable et le problème installer-freeze problème, tous deux liés à l'utilisation d'un matériel basé sur NVIDIA gpu. Je voudrais résoudre les deux problèmes dans cette seule réponse, alors voici:

Le système sur lequel je travaille est un Ubuntu 18.04 LTS AMD64 fonctionnant sur un Core i7 avec un gpu intégré HD Graphics et un gpu NVIDIA GEFORCE GTX 960M.

Premièrement, le programme d'installation d'Ubuntu se fige au démarrage : cela est dû à la présence de la puce NVIDIA. Par conséquent, pour le corriger, démarrez-le et appuyez sur Elorsque le GRUB apparaît. Accédez à la fin de la ligne LINUX et ajoutez nouveau.modeset=0. Continuez ensuite le processus de démarrage en appuyant sur F10. Installez le système normalement et, une fois terminé, supprimez le support du programme d'installation de l'ordinateur, redémarrez le système et connectez-vous à votre compte.

Continuer ci-dessous:

2ème, l’horrible problème de déchirement de l’affichage ou l’affichage PRIME non synchronisé : est causée par une configuration incorrecte de l’affichage PRIME (le système doit décharger correctement les graphiques dans une configuration système à plusieurs gpu), aussi installez-vous d’abord les pilotes GPU appropriés sur le système. Dans mon cas, le pilote de la version 390 correspond au gpu de la GTX 960M. Par exemple, il serait nécessaire d’exécuter un Sudo apt-get install nvidia-driver-390. Si la version du pilote appropriée est disponible, je préférerais le faire à partir des référentiels principaux plutôt que d'un PPA.

Une fois les bibliothèques de pilotes installées, accédez à un terminal et ouvrez gediten tant que super utilisateur avec Sudo gedit. Ensuite, ouvrez le fichier système /etc/default/grub, localisez la ligne contenant le code nouveau.modeset=0 que nous avons défini précédemment et supprimez-le complètement. Remplacez cette ligne par GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1" et enregistrez. Fermez gedit et, dans le terminal, effectuez une mise à jour GRUB en effectuant un Sudo update-grub.

Cela fait, fermez tout et redémarrez le système. Tout devrait bien fonctionner maintenant!

Remarques:

  1. Mes étapes guidées sont un résumé des avis des autres utilisateurs et j'ai effectué ces étapes au moins trois fois avec le même résultat remarquable. J'ai décidé d'écrire mon propre guide car ceux que j'ai utilisés présentaient toujours des problèmes non résolus que je devais résoudre pour que le système fonctionne correctement.

  2. Pour identifier la version de votre pilote NVIDIA correspondant, vous pouvez consulter la page de téléchargement officiel de ces pilotes en sélectionnant le modèle approprié et linux 64 bits comme système d'exploitation. Les résultats montreront le numéro de version approprié.

  3. Si vous voulez savoir ce qu'est un écran PRIME et pourquoi il est si encombrant, vous pouvez consulter ce lien: https://devtalk.nvidia.com/default/topic/957814/linux/prime-and- synchronisation primaire /

Bonne chance!

0
Star Man