NVIDIA

De ArchwikiFR
(Redirigé depuis Nvidia)


Attention: Certains portables utilisent maintenant la technologie propriétaire Optimus qui permet d'éteindre la carte NVidia au profit d'un chipset intégré Intel pour économiser de l'énergie. Voir Bumblebee pour son support.

Il existe 3 pilotes différents :

  • Deux pilotes libres :
    • nouveau est un pilote récent, dont le développement est actif et les performances correctes. Les cartes les plus anciennes ne sont pas supportées par nouveau.
    • nv est le pilote libre "historique" fourni par nvidia, il n'est plus développé mais peut être la seule alternative sur les cartes anciennes.
  • Un pilote officiel fourni par nvidia, propriétaire.

Si vous disposez de la technologie Optimus, veuillez consulter la page dédiée à Bumblebee.


Nouveau

Vérifiez si le modèle de votre carte graphique est supporté par ce driver : http://nouveau.freedesktop.org/wiki/CodeNames

Installation

pacman -S xf86-video-nouveau

Pour l'accélération 3D (expérimentale) nécessaire à l'utilisation de gnome-shell ou des effets de bureau de Kwin, il vous faut installer:

pacman -S nouveau-dri

Nouveau utilise le Kernel Mode Setting, incompatible avec VesaFB, c'est à dire l'option "vga=" du noyau (dans /boot/grub/menu.lst si vous utilisez GRUB 0.97) Vérifiez donc bien l'absence de cette option.

Configuration

Astuce: Depuis la sortie de xorg-server 1.10.2-1, cette étape n'est nécessaire que pour ajouter des options au pilote.

Créez le fichier suivant pour y ajouter vos options :

Fichier: /etc/X11/xorg.conf.d/20-nouveau.conf
 Section "Device"
     Identifier "nvidia card"
     Driver "nouveau"
     *vos options*
 EndSection


Astuce : écran externe scintille

Avec le dernier module Nouveau vous pouvez modifier la performance de votre carte, notamment pour les laptops. Il se peut que vous ayez des scintillements si vous utilisez un écran externe en résolution maximale. Il est désormais possible de choisir le niveau de performance la commande ci-dessous vous permet d'en avoir un aperçu

$ dmesg
...
[    9.833231] nouveau  [     DRM] 3 available performance level(s)
[    9.833235] nouveau  [     DRM] 0: core 169MHz shader 338MHz memory 100MHz voltage 1150mV fanspeed 100%
[    9.833239] nouveau  [     DRM] 1: core 275MHz shader 550MHz memory 200MHz voltage 1150mV fanspeed 100%
[    9.833243] nouveau  [     DRM] 2: core 400MHz shader 800MHz memory 400MHz voltage 1320mV fanspeed 100%
[    9.833246] nouveau  [     DRM] c: core 275MHz shader 550MHz memory 199MHz
...

la ligne "core" est le niveau sélectionné. Ici le niveau 2 est choisi en ajoutant à la ligne du kernel les options suivantes

nouveau.perflvl_wr=7777 nouveau.perflvl=2

Attention: Verifiez bien que votre carte ne surchauffe pas

Pilote propriétaire

Les pilotes propriétaires NVIDIA sont disponibles sous forme de paquets dans les dépôts officiels Archlinux : il est déconseillé de télécharger le pilote depuis le site officiel NVIDIA, la méthode recommandée est d'utiliser pacman.

Installation

Attention: Si vous aviez auparavant installé les pilotes libres nouveau:
  • Éditer les fichiers optionnellement modifiés pour activer KMS : supprimer nouveau dans /etc/mkinitcpio.conf et recréer l'initramfs à l'aide de mkinitcpio
  • Supprimer toute configuration personnalisée relative à nouveau pour Xorg (/etc/X11/xorg.conf.d/20-nouveau.conf par exemple)
  • (optionnel) Désinstaller les paquets liés à nouveau, à moins que vous ne vouliez basculer entre nouveau et nvidia: xf86-video-nouveau, nouveau-dri.

Pour les GeForce 8 et les cartes plus récentes [NVC0 and newer]:

pacman -S nvidia nvidia-utils nvidia-libgl
Note: Si le pilote nvidia ne fonctionne pas, ou mal, pour des cartes très récentes (les fonctionnalités n'étant pas forcément encore intégrées sur la branche principale), vous pouvez éventuellement utiliser nvidia-beta depuis AUR.

Selon l'ancienneté de la carte, il se peut que vous ayez besoin d'un paquet différent si ce dernier est dans les dépôts, cf. source (en):

GPU Paquet Observation
GeForce 8/9/GT2xx nvidia-340xx
Important: Le support est assuré jusqu'à fin 2019.
GeForce 6/7 [NV40-NVAF] nvidia-304xx
Important: Le support est assuré jusqu'à fin 2017.
GeForce 5 FX [NV30-NV38] nvidia-173xx
Important: Vous devrez utiliser une version plus ancienne de xorg-server, la 1.15 au mieux.
GeForce 2/3/4 MX/Ti [NV11 and NV17-NV28] nvidia-96xx
Important: Vous devrez utiliser une version plus ancienne de xorg-server, la 1.12 au mieux.
Autre Se rabattre sur les pilotes libres

Vous devrez redémarrer pour charger le module nvidia à la place du module nouveau.

Note: Si vous utilisez le noyau linux-lts, n'oubliez pas d'installer la version lts de votre pilote nvidia: nvidia-lts, etc.. Pour tout autre noyau personnalisé, vous devrez recompiler le pilote.
Astuce: Sur les systèmes 64 bits utilisant le dépôt [multilib] ou AUR, le paquet lib32 équivalent à votre pilote (comme lib32-nvidia-utils) sera nécessaire pour profiter de l'accélération 3D dans les applications 32 bits (wine par exemple).

Configuration

La configuration de Xorg est automatique depuis xorg-server 1.8 et nul fichier supplémentaire n'est nécessaire depuis la 1.10.2 et nvidia-utils 275.09.07.

En cas de configuration personnalisée, il suffit de créer le fichier /etc/X11/xorg.conf.d/20-nvidia.conf (fourni dans les versions de nvidia-utils < 275.09.07) avec le contenu minimal suivant:

Section "Device"
   Identifier     "Device0"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
EndSection
Astuce: Ajouter ce simple fichier de base évitera du travail supplémentaire à X.

Ainsi, pour activer le contrôle de la luminosité de l'écran pour les ordinateurs portables, ajouter la ligne suivante (dans la Section "Device") :

Option "RegistryDwords" "EnableBrightnessControl=1"

Puis redémarrez le serveur X.

Astuce: depuis la version 302.17 du driver nvidia, la reconnaissance automatique des écrans via RandR a été considérablement améliorée [1], ce qui est plutôt une bonne nouvelle. Ceci étant dit, il y a des effets de bord inattendus, en voici un pour les utilisateurs de Gnome : la détection automatique entraîne la configuration tacite de votre télévision (CRT-0) si celle-ci est connectée en permanence à votre carte graphique. Cela entraîne la configuration tout aussi tacite par Gnome via Xinerama d'un double écran qui mène à un plantage de GDM et du gnome-shell, la solution est simple : débranchez votre téléviseur !!!

Établir la PureVideo HD (VDPAU/VAAPI)

Pour tirer le meilleur parti de votre carte graphique lors de la lecture de vidéo HD (et de décharger la mémoire de votre machine d'une partie des processus de rendus vidéos), certaines bibliothèques opensource et logiciels peuvent être installées.

Matériel requis

Vous pouvez bénéficier de la PureVideo HD sur les cartes nvidia de seconde génération PureVideo HD, c'est-à-dire à partir de certaines GeForce 8 (voir liste complète).

Logiciel requis

Vous pouvez ajouter le support pour VA-API avec:

pacman -S libva-vdpau-driver

Et vérifier:

$ vainfo

Il ne vous restera qu'à utiliser un lecteur vidéo qui supporte VDPAU ou VAAPI et à le configurer:

  • MPlayer: le support est assuré par libvdpau qui sera installé en même temps que lui. Il ne vous restera qu'à rajouter un ~/.mplayer/config avec pour contenu:
Fichier: ~/.mplayer/config
[default]
vo=vdpau
vc=ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau,
Attention: Vérifiez quelles options sont valables pour vc selon votre modèle de carte à l'aide de la liste complète (notamment pour ffodivxvdpau).
  • SMPlayer, gnome-player: regardez dans les préférences vidéos pour sélectionner le pilote vdpau.
  • VLC: libva-vdpau-driver doit être installé. Il vous restera à activer l'accélération matérielle dans les préférences.
  • xbmc: libva-vdpau-driver doit être installé.
  • kaffeine: remplacez xine-lib par xine-lib-vdpau-hg, disponible sur AUR.
  • flashplugin: installer libvdpau et vérifier que EnableLinuxHWVideoDecode=1 est bien décommenté dans /etc/adobe/mms.cfg (ou via votre navigateur internet, (dé)cocher la case appropriée dans les paramètres de la vidéo que vous lisez).
Attention: Avec flashplugin, si vous obtenez l'erreur adobe flash plugin a planté veuillez réactualiser la page dans le navigateur ou si votre système gèle, commentez de nouveau l'instruction EnableLinuxHWVideoDecode ou passez sa valeur à 0.
Note: Sur les cartes disposant de peu de mémoire, la lecture de vidéo HD peut être délicate sous certains environnements graphiques. Passer à des gestionnaires de fenêtres légers (openbox, voire même twm) peut remédier à cela.

Nvidia-DKMS

Pour résoudre les problèmes rencontrés lors de mises à jour du noyau sans avoir à le recompiler, il peut être pratique d'utiliser nvidia-dkms disponible dans AUR. Pour ce faire, installez nvidia-hook.

Pour démarrer et activer le service au démarrage:

 systemctl enable dkms.service &&  systemctl start dkms.service

Ajoutez nvidia aux hooks de /etc/mkinitcpio.conf et refaites l'image de démarrage:

 mkinitcpio -p linux
Note: Pour éviter un écran noir au démarrage le temps de la recompilation par dkms, éxécuter après la mise à jour et avant le reboot :
 dkms autoinstall -k 3.15.8-1-ARCH 
remplacer 3.15.8-1- par la version du noyau de la mise-à-jour)

Nv

pacman -S xf86-video-nv

Xorg le charge par défaut s'il le trouve.

Note: ce pilote est vieux, non maintenu, ne supporte que l'accélération 2D et peu de cartes (surtout vieilles, même si les méthodes de «reverse engineering» ont permis de supporter les cartes des séries Riva, GeForce, etc., jusqu'à la GT200). La liste complète des cartes supportées peut être obtenue après installation de ce paquet via man nv.