Pour ceux qui souhaitent tirer pleinement parti de leurs cartes graphiques NVIDIA sur votre PC en Linux, il est essentiel d’optimiser les pilotes. Bien que l’installation de pilotes sur Linux puisse être simple, leur configuration pour une performance maximale est une autre affaire, surtout quand il s’agit d’ajuster les paramètres pour des tâches spécifiques comme le jeu, le rendu graphique, ou l’apprentissage automatique.
Suivez ces étapes pour optimiser les performances de votre carte graphique et garantir une compatibilité maximale avec les logiciels qui exploitent la puissance de l’accélération GPU NVIDIA sur Linux.
Ce tutoriel fonctionne pour la plupart des distributions Linux Ubuntu, Fedora, Debian, Linux Mint et bien d’autres.
Table des matières
- 1 Comment optimiser pilotes NVIDIA sur Linux
- 1.1 Utiliser Xorg à la place de Wayland
- 1.2 Activer drm et fbdev
- 1.3 Autres options du module Nvidia à activer
- 1.4 Configurer nvidia-settings pour des performances optimales
- 1.5 Activer le mode de composition en pipeline (V-Sync)
- 1.6 Optimiser Xorg pour NVIDIA
- 1.7 Activer le GPU Scheduling (nvidia-smi)
- 1.8 Utiliser Vulkan pour les jeux compatibles
- 1.9 Monitorer les performances et ajuster si nécessaire
- 1.10 Utiliser les paramètres d’overclocking avec précaution
- 2 Liens
Comment optimiser pilotes NVIDIA sur Linux
Utiliser Xorg à la place de Wayland
Xorg reste souvent recommandé pour les gamers sur Linux, principalement parce que Wayland peut encore causer une légère baisse de FPS dans certains jeux. Les différences de performance entre Xorg et Wayland se manifestent principalement à cause des différences dans la gestion de la composition et des pilotes graphiques.
De plus, Xorg est mieux pris en charge par de nombreux pilotes et outils de capture, et son architecture est plus stable pour les applications gourmandes en ressources, comme les jeux.
Sur la plupart des distributions Linux, il est relativement simple de passer d’un serveur X à l’autre.
Par exemple, sur Ubuntu, vous devez cliquer sur l’icône roue crantée pour choisir le type de session.
Activer drm et fbdev
Le Direct Rendering Manager (DRM) est un composant essentiel du système Linux pour gérer les ressources graphiques en mode noyau, offrant ainsi des capacités de rendu direct aux applications graphiques. Avec les pilotes NVIDIA sur Linux, l’intégration de DRM est cruciale pour des performances optimales et la gestion des ressources, notamment dans les environnements graphiques et les jeux.
Les pilotes propriétaires NVIDIA incluent désormais une prise en charge de DRM via un module appelé nvidia-drm. Ce module permet d’utiliser le mode natif KMS (Kernel Mode Setting), une fonctionnalité qui améliore la stabilité et le rendu des écrans en définissant la résolution et la profondeur de couleur directement au niveau du noyau. Cela est particulièrement utile pour les configurations avec plusieurs écrans ou pour les applications nécessitant un rendu 3D intensif.
- Pour activer drm, modifiez l’entrée suivante du fichier GRUB
/etc/default/grub
:
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 nomodeset nvidia-drm.modeset=1 nvidia_drm.fbdev=1"
- L’option
nvidia-drm.modeset=1
est un paramètre du module de noyau NVIDIA pour activer le Direct Rendering Manager (DRM) KMS (Kernel Mode Setting) sur les GPU NVIDIA. Elle permet de gérer directement les paramètres d’affichage au niveau du noyau, ce qui présente plusieurs avantages pour la gestion graphique sous Linux. - L’option
nvidia-drm.fbdev=1
est une configuration spécifique au module DRM (Direct Rendering Manager) des pilotes NVIDIA sur Linux. Elle permet de créer un framebuffer (fbdev) géré par le pilote NVIDIA, ce qui offre un support pour les applications nécessitant un framebuffer (comme certains utilitaires ou écrans de démarrage). Le framebuffer est une couche d’abstraction qui permet de dessiner directement sur l’écran en mode texte ou en l’absence d’un serveur graphique comme Xorg ou Wayland
- Puis mettez à jour la configuration GRUB :
sudo update-grub
- Enfin redémarrez votre appareil :
sudo reboot
Pour vérifier que ce dernier est activé :
sudo cat /sys/module/nvidia_drm/parameters/modeset
Cela doit retourner Y
Autres options du module Nvidia à activer
- Vous pouvez aussi activer certaines options du pilote NVIDIA, pour cela, éditez le fichier
/etc/modprobe.d/nvidia.conf
et ajoutez :
options nvidia NVreg_PreserveVideoMemoryAllocations=1 NVreg_TemporaryFilePath=/tmp/tmp-nvidia
- L’option
NVreg_PreserveVideoMemoryAllocations=1
dans les pilotes NVIDIA pour Linux est un paramètre avancé du module du noyau qui permet de conserver les allocations de mémoire vidéo lorsque le pilote est déchargé puis rechargé. Cela peut être particulièrement utile dans des environnements où des applications nécessitent une continuité de la mémoire vidéo ou pour maintenir des performances optimales après la suspension ou l’hibernation du système - Module NVIDIA en mode basse latence : Ajoutez l’option suivante pour réduire la latence dans
/etc/modprobe.d/nvidia.conf
(créez le fichier si nécessaire) :
options nvidia NVreg_UsePageAttributeTable=1
- Améliorer la gestion de la mémoire : Activez l’option
MSI
(Message Signaled Interrupts) dans le fichier de configuration du module pour améliorer les performances sur certaines configurations matérielles :
options nvidia NVreg_EnableMSI=1
Pour prendre en compte les modifications :
sudo modprobe -r nvidia && sudo modprobe nvidia
Vous pouvez aussi tester la prise en compte de fbdev comme ceci. Cela doit retourner Y :
sudo cat /sys/module/nvidia_drm/parameters/fbdev
Configurer nvidia-settings pour des performances optimales
L’outil nvidia-settings
est fourni avec les pilotes et vous permet de personnaliser divers paramètres graphiques :
- OpenGL Image Settings : Réglez-le sur “High Performance” dans
nvidia-settings
(sous “OpenGL Settings”)
- Powermizer : Passez la gestion de l’énergie en mode “Performance maximale” (Maximum Performance) pour éviter les baisses de fréquence de la carte graphique
- Antialiasing et Texture Filtering : Désactivez l’antialiasing ou réduisez les paramètres de filtrage des textures si vous recherchez les meilleures performances, au détriment de la qualité visuelle.
Activer le mode de composition en pipeline (V-Sync)
Pour éviter les déchirements d’image (“tearing”), activez le “Full Composition Pipeline” :
- Dans
nvidia-settings
, allez dans X Server Display Configuration. - Sélectionnez l’écran à configurer, cliquez sur “Advanced“, puis cochez Force Composition Pipeline et Force Full Composition Pipeline.
- Appliquez les changements et sauvegardez la configuration X pour qu’elle persiste après redémarrage
Optimiser Xorg pour NVIDIA
Configurez votre fichier /etc/X11/xorg.conf.d/20-nvidia.conf
pour tirer le meilleur parti de votre GPU. Vous pouvez inclure des options telles que :
Section "Device"
Identifier "NVIDIA Card"
Driver "nvidia"
Option "NoLogo" "True"
Option "TripleBuffer" "True" # Pour une meilleure fluidité
Option "ModeDebug" "True" # Pour diagnostiquer les erreurs du GPU
EndSection
Activer le GPU Scheduling (nvidia-smi)
Utilisez l’outil nvidia-smi
pour ajuster les paramètres de votre GPU en fonction de vos besoins. Pour basculer le GPU en mode de performances maximales :
nvidia-smi -pm 1 # Activer le mode de gestion de puissance
nvidia-smi -pl <watts> # Limiter la puissance maximale en watts
Utiliser Vulkan pour les jeux compatibles
Vulkan est souvent plus performant qu’OpenGL pour les jeux et applications compatibles. Assurez-vous d’avoir installé les paquets vulkan-tools
et vulkan-utils
, et configurez les jeux pour utiliser l’API Vulkan.
Monitorer les performances et ajuster si nécessaire
Utilisez nvidia-smi
pour surveiller l’utilisation du GPU, la température, et la fréquence. Cela peut vous aider à identifier les goulots d’étranglement et à ajuster les paramètres pour une performance optimale.
Vous pouvez aussi utiliser l’utilitaire glxgears
pour mesurer les FPS de votre carte graphique.
Si glxgears bloque à 60 fps, lancez le avec la variable suivante :
__GL_SYNC_TO_VBLANK=0 glxgears
Utiliser les paramètres d’overclocking avec précaution
Si votre GPU le permet, vous pouvez overclocker pour améliorer les performances :
- Ajoutez
Option "Coolbits" "28"
dans votre configuration Xorg. - Utilisez
nvidia-settings
pour ajuster la fréquence d’horloge et de mémoire. Attention, l’overclocking peut causer des surchauffes, alors assurez-vous que votre système est bien refroidi.
Section "Device"
Identifier "NVIDIA Card"
Driver "nvidia"
Option "NoLogo" "True"
Option "Coolbits" "28" # Pour activer l'overclocking et le réglage de la vitesse des ventilateurs
Option "TripleBuffer" "True" # Pour une meilleure fluidité
Option "ModeDebug" "True" # Pour diagnostiquer les erreurs du GPU
EndSection
Liens
- Installer les pilotes NVIDIA sur Linux (propriétaire – fichier .run)
- Installer les pilotes NVIDIA sur Ubuntu (propriétaire)
- Comment installer GameMode sur Linux
- Comment accélérer Ubuntu (9 façons)
- hdparm : optimisation et test de vitesse de disques sur Linux
- Comment créer un disque RAM tmpfs ou ramfs sur Linux
- 20 meilleurs logiciels de sauvegarde pour Linux (open source)