Cette page présente l'installation du logiciel Prime, dont le but est de supporter la technologie Optimus de NVIDIA sous Linux.
Prime apporte un meilleur support pour les ordinateurs portables disposant de la technologie Optimus. Il permet de gérer cette technologie présente dans de nombreux PC portables équipés d’un processeur Intel et d’une carte graphique dédiée Nvidia. Pour rappel, Optimus permet de basculer automatiquement de l’une à l’autre, en fonction des logiciels lancés par l’utilisateur.
De manière générale, les différents composants matériels présents dans de tels ordinateurs nécessitent l'utilisation d'un noyau récent.
Si vous voulez installer le support Optimus avec le pilote graphique Nvidia 319 ouplus récent, voici ce que vous devez faire :
Tout d'abord, désinstaller Bumblebee et libvdpau-va-gl1 si nécessaire :
sudo apt-get purge bumblebee* primus libvdpau-va-gl1
Ensuite, il faut installer les drivers propriétaires NVidia. Lancez "Pilotes additionnels" (pressez une fois la touche Super et commencez à taper le nom de l'application) :
Cela lance l'application "Logiciels et mises à jour" sur l'onglet "Pilotes additionnels": Si "Nouveau" est sélectionné, vous utilisez les pilotes libres. Vous constatez que les noms de pilotes finissent pas un numéro de version. Sur l'illustration ci-dessus, la dernière version du driver propriétaire NVIDIA est la 460, c'est donc celle-ci que je sélectionne. N'oubliez pas de cliquer sur "Appliquer les changements". Vous aurez à entrer votre mot de passe. Le pilote sélectionné ne sera actif qu'au redémarrage de votre machine.
Pour obtenir l’accélération GPU pour les vidéos HD via le pilote nvidia et un player compatible (VLC, mplayer, xbmc, etc) il suffit d'installer le paquet vdpau-va-driver
Redémarrez ensuite votre système.
Après le redémarrage, vous pourrez utiliser l'application nvidia-settings pour choisir les performances (passage du GPU intégré au GPU NVidia et vice versa).
Le basculement n'est pas automatique comme sous Windows® mais manuel. Il y a 2 solutions.
Pour Ubuntu et toutes ses variantes:
Lancez Nvidia-setting l'utilitaire de configuration Nvidia. Vous aurez un onglet PRIME profiles qui permet de changer le processeur graphique actif.
Désormais, il y a 3 options de profil :
À partir du moment où vous utilisez le profil "On Demand", vous pouvez lancer une application avec votre dGPU en faisant un clic droit → "Démarrer en utilisant la carte graphique dédiée" sur son icône de lancement.
De manière générale, vous contrôlez si un programme démarre avec le dGPU avec ces variables d'environnement :
Variable | Valeur | Effet |
---|---|---|
__NV_PRIME_RENDER_OFFLOAD | 1 | Active lerender offload |
__GLX_VENDOR_LIBRARY_NAME | nvidia | Sélectionne le dGPU NVidia. En effet, le render offload peut théoriquement être utilisé avec d'autres dGPU que NVidia |
Pour aller plus loin, voir la doc officielle sur le render offload NVidia
Voici deux lignes de commande qui servent à valider que les variables sont bien prises en compte :
$ __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep vendor server glx vendor string: NVIDIA Corporation client glx vendor string: NVIDIA Corporation OpenGL vendor string: NVIDIA Corporation $ glxinfo | grep vendor server glx vendor string: SGI client glx vendor string: Mesa Project and SGI OpenGL vendor string: Intel
Les commandes ci-dessus appellent glxinfo
respectivement avec le dGPU et le iGPU, puis sélectionnent les lignes affichant le mot "vendor".
Dans certains cas, il peut être nécessaire d'exporter les variables d'environnement :
Vous pouvez créer un lanceur d'application qui lance toujours l'application cible avec le dGPU en l'éditant avec un éditeur de texte de manière à préfixer la commande de lancement (ligne Exec=
) avec les variables vues dans la section précédente.
Par exemple, si lanceur de l'application (un fichier avec l'extension .desktop
) contient la ligne :
Exec=/usr/bin/mon_application
… alors vous devrez l'éditer pour obtenir :
Exec=env __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia /usr/bin/mon_application
Les adaptateurs tels wine, steam oulutris possèdent tous des moyens pour définir les variables d'environnement afin que l'application puisse être lancée sur le dGPU. Référez-vous à leurs documentations respectives.
Pour Ubuntu Unity et Cubuntu:
Prime Indicator est un petit utilitaire pour Ubuntu qui permet aux utilisateurs de basculer rapidement entre les cartes graphiques Intel et Nvidia.
Après l'installation de Prime et des derniers pilotes propriétaires Nvidia, un bug provoquerait un gel de l'écran à l'utilisation du touchpad. Les détails et témoignages sur launchpad.net (en anglais) ici et ici.
Après avoir installé le driver propriétaire, il est possible de switcher dans l'onglet Prime entre la carte graphique et le processeur. Un bug reconnu empêche NVIDIA X Server Settings de se lancer en version 384.69-0ubuntu1 lorsque le choix Prime est mis sur le processeur.
Dans ce cas, pour switcher à nouveau, il faut utiliser cette commande :
sudo prime-select nvidia
pour basculer sur la carte graphique
ou
sudo prime-select intel
pour revenir sur le processeur.
Redémarrez votre ordinateur après chaque changement.