Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nvidia_optimus [Le 02/12/2010, 01:20]
93.158.9.190 ajout d'un lien sur un projet
nvidia_optimus [Le 20/03/2023, 13:21] (Version actuelle)
81.247.240.195 Nettoyage
Ligne 1: Ligne 1:
-{{tag>​matériel nvidia ​BROUILLON}}+{{tag>Jammy matériel ​carte_graphique énergie ​nvidia}}
 ---- ----
  
-====== nVidia ​Optimus : la vidéo hybride ======+====== nVidia ​Optimus ​: la vidéo hybride ======
  
-<​note>​Cette page est en construction FIXME. +La technologie **Optimus** ​est développée par le fabricant de cartes graphiques [[http://​www.nvidia.fr/page/​home.html|nVidia]],​ elle est à destination des ordinateurs portables et mini-PC. Elle a pour but de trouver le juste équilibre entre autonomie de la batterie et performances graphiques.
-</note>+
  
-Cette page présente la technologie ​**Optimus**, ​développée par le fabricant ​nVidia ​à destination ​des ordinateurs ​portables. ​Elle a pour but de trouver ​le juste équilibre entre autonomie ​de la batterie et performance graphique.+===== Avant-Propos ===== 
 + 
 +**Est-ce que votre ordinateur est équipé d'Optimus ​?** Question importantecar si ce n'est pas le cas il n'est a priori pas utile de lire cette page. 
 + 
 +Tout d'​abord,​ il faut savoir que cela ne concerne que les ordinateurs portables et mini-PC.\\ 
 +Si votre portable est équipé d'un processeur Intel Core iX, que ce soit des générations Arrandale (Core i7 6xx, Core i5 xxx, Core i3 xxx), Sandy Bridge (Core iX 2xxx) ou Ivy Bridge (Core iX 3xxx), ainsi que d'une carte graphique ​nVidia des générations 200, 300, 400, 500 ou 600, alors vous êtes très certainement concerné. Attention, les Core i7 QM ne sont généralement pas concernés. 
 + 
 +De plus, les portables ​pré-Optimus (Asus ULx0Vt notamment) sont également concernés. 
 + 
 +**De manière générale**, ​pour savoir facilement si vous êtes concerné, ouvrez un [[:​terminal]] et entrez cette [[:​commande_shell|commande]]:​ 
 +<​code>​lspci -vnn | grep '​\''​[030[02]\]'</​code>​ 
 + 
 +S'il y a deux résultats, un portant la mention Intel, l'​autre la mention nVidia, alors vous êtes concernés. S'il n'y a qu'un seul résultat, ce n'est a priori pas le cas. Cependant, certains modèles disposent d'une option dans le %%BIOS%% permettant ​de désactiver l'une des deux puces graphiques ne laissant plus que l'​autre apparaître. À vous de voir si cette situation vous convient, sachant qu'​alors tout se déroule comme sur un système non-hybride. 
 + 
 +Dans tous les autres cas, ou en cas de doute, postez ​le résultat dans [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=16691331#​p16691331|ce topic]], une réponse vous sera apportée peu de temps après.
  
 ===== Présentation ===== ===== Présentation =====
  
-Optimus est une technologie qui fonctionne à la fois sur le plan matériel et logiciel.+==== Explications générales ====
  
-Techniquement,​ Optimus exploite deux cartes graphiques :​ +Partant du constat que l'autonomie est un point crucial pour les ordinateurs portablesIntel inclut une carte graphique ​basse consommation dans quasiment tous ses processeurs mobiles depuis Janvier 2010permettant ainsi de se passer ​d'une carte graphique dédiée plus performante ​mais également plus énergivore,​ du moins tant qu'il ne s'agit que de bureautique ou de films classiques (les Blu-Ray sont plus ou moins bien supportés). 
-  * l'IGP (Integrated Graphics Processor)chipset ​graphique ​intégré au processeurpeu consommateur ​d'énergie ​mais aussi peu performant ;​ + 
-  ​* ​et le GPU (Graphics Processing Unit), la carte graphique dédiée, ​puissante mais gourmande. +Cette puce graphique intégrée est en effet à ce jour bien en-deçà de ce que peuvent fournir des cartes dédiées en termes de performances, ​et dès que l'on veut utiliser des logiciels requérant des capacités 3D tels les jeux vidéo, ​le montage vidéo ou édition numérique lourde, la modélisation 3D, etc ..., on se retrouve très vite limité par celle-ci. 
-Optimus passe de l'un à l'autre en fonction des besoins de l'​utilisateur: ​puissance graphique ou économie ​d'énergie.+ 
 +Aussi, nVidia ​(suivi par ATI/AMD depuisa réfléchi à un système permettant d'​avoir les avantages des deux mondes : **une grande autonomie ET des performances graphiques relativement élevées**. 
 + 
 +Dans la pratique, ce système est censé fonctionner de la manière suivante : en utilisation bureautique/​légère, la carte graphique dédiée ​nVidia est éteinte électriquementsa consommation est ainsi nulle et on se retrouve dans la situation classique ou la carte graphique intégrée s'occupe de tout. Si un programme demandant des performances 3D vient à être lancé, alors la carte nVidia s'allume et fait tourner le programme ​en question. Elle s'​éteint lorsque celui-ci s'​arrête. Ce fonctionnement est globalement transparent pour l'​utilisateur, mais il s'agit ici de la théorie. 
 + 
 +==== Quelle carte est actuellement active sur mon PC ? ==== 
 +Une solution est d'​utiliser l'​outil **glxinfo** ​: 
 +    glxinfo | grep "​OpenGL renderer"​ 
 +     
 +==== Quel pilote/​driver est actuellement active sur mon PC ? ==== 
 +Une solution est d'utiliser l'​outil **lshw** et filtrer les resultats qui nous interesse : 
 +    lshw -c video | grep -v ressources: | grep -v horloge: | grep -v bits: | grep -v bus: | grep -v riel:  
 +    ​
  
 ===== État des lieux ===== ===== État des lieux =====
Ligne 22: Ligne 47:
 ==== Analyse ==== ==== Analyse ====
  
-Selon la communauté LinuxOptimus n'est pas adapté à l'​architecture des systèmes Linuxnotamment en ce qui concerne ​le serveur d'​affichage [[Xorg]]vieillissant et incompatible avec le changement "à chaud" ​de périphérique ​d'affichage propre ​à Optimus.+Dans la pratiquesi cela est fonctionnel sous Windows**le support de cette technologie sous Linux par défaut est plutôt catastrophique**. Des solutions commencent néanmoins à émergerelles sont présentées dans le troisième paragraphe ​de cette partie. Néanmoins, s'il s'agit de se renseigner pour l'​achat ​d'un ordinateur portable, alors **cette technologie est à éviter** si l'on prévoit de se servir principalement de Linux.
  
-En l'étatsur les portables Optimus équipés ​de Linuxseul l'IGP serait exploitableoffrant des performances médiocres au regard ​de celles ​de la plupart des GPUPour autant, le GPU resterait alimenté, diminuant l'​autonomie tout en restant inutilisable+Le serveur d'affichage X.org se fait vieuxet il n'a pas été conçu pour gérer cette situation. Devant cette situation, une réécriture intégrale ​de celui-ci est en coursmais c'est un projet à long terme tant cela est fastidieux. Pour les curieuxil s'​agit ​de **Wayland**. Les problèmes techniques pour l'​implémentation de cette technologie sous Linux sont détaillés dans le dernier paragraphe ​de cette partieUn autre projet moins lointain est PRIMEqui devrait apporter entre autre le support de cette technologie dans X.org.
  
-Il est toutefois possible de désactiver la carte graphique dédiée sur un grand nombre d'​ordinateur portable en utilisant un module nommé acpi_call dont l'​installation est détaillée sur un site anglophone consacré au développement du support des cartes graphiques hybrides: [[http://​linux-hybrid-graphics.blogspot.com/​|linux-hybrid-graphics]]. L'​utilisation de ce module permet d'​économiser de l'​énergie (en pratique quelques watts) mais ne permet pas d'​utiliser la carte graphique dédiée qui n'est pas alimentée. 
  
-==== Pilotes ====+Ensuite, il ne reste plus que les deux problèmes suivants, qui sont eux présents pour tous en revanche, mais pour lesquels les solutions présentées ci-après existent : 
 +  * **la carte graphique nVidia (GPU) n'est pas utilisable par défaut**, seul la carte intégrée Intel est exploitable,​ offrant des performances décevantes au regard de celles de la plupart des GPU. 
 +  * pour autant, **elle reste alimentée en permanence** (et consommant plus que ce que devrait consommer cet état passif), **diminuant l'​autonomie** tout en restant inutilisable.
  
-<note important>​A l'​heure actuelle, installer sur un portable Optimus les pilotes de la carte graphique nVidia (y compris ceux proposés par Ubuntu) mènera très probablement à un écran noir au redémarrage. Mieux vaut donc ne toucher à rien (et se contenter des ressources de l'​IGP)!</​note>​+==== Solutions existantes :​ PRIME Render Offload ====
  
-=== Pilotes propriétaires === 
-A l'​heure actuelle, [[nVidia]] n'a présenté aucun pilote Linux permettant le support d'​Optimus. [[http://​www.nvnews.net/​vbulletin/​showthread.php?​t=144750|Et ils ne prévoient pas d'en développer]]. 
  
-=== Pilotes libres === +La version 450 du pilote fournit directement un outil appelé **PRIME Render Offload** qui permet de gerer Optimus
-Optimus ​étant ​une technologie relativement récente ​(lancée début 2010), les travaux ​de la communauté sont encore expérimentaux. Pour l'​instant,​ aucune solution fiable n'est applicable.+À partir d'une configuration neuve (aucun fichier xorg modifiéetc...) installer ​les derniers pilotes nvidia (>=450) via le [[gestionnaire_de_pilotes_proprietaires|gestionnaire ​de pilotes propriétaires]] ou sous Ubuntu 20.04 depuis le dépôt suivant: 
 +  $ sudo add-apt-repository ppa:​graphics-drivers/​ppa 
 +  $ sudo apt update 
 +  $ sudo apt dist-upgrade 
 +  $ sudo apt install nvidia-driver-450 
 +  $ shutdown -r now
  
-Des travaux sont entrepris [[http://​linux-hybrid-graphics.blogspot.com/|ici]]. Cependantils ne concernent pas uniquement Optimus mais plus généralement les technologies basées sur le même concept. Le module développé permet toutefois de désactiver ​la plupart des cartes graphiques dédiées équipées de la technologie Optimus de Nvidia ​et ainsi de ne plus alimenter la carte Nvidia économisant ainsi du temps de fonctionnement sur batterie.+Vous pourrez ensuite forcer l'​utilisation du GPU Nvidia en précédant la commande à exécuter de 
 +<​code>​__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia COMMANDE_A_EXECUTER<​/code> 
 +   
 +La variable d'​environnement "_ _NV_PRIME_RENDER_OFFLOAD=1"​ est destinée à à Vulkan ou EGL\\ 
 +La variable d'​environnement "_ _GLX_VENDOR_LIBRARY_NAME=nvidia"​ est destinée à GLX. 
 +   
 +Pour tester si cela fonctionneessayer ​la commande ci-dessous qui devrait vous renvoyer ​la marque ​et le modèle ​de votre carte graphique : <​code>​__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | egrep "​(OpenGL vendor|OpenGL renderer|OpenGL version)"​ 
 +  OpenGL vendor string: NVIDIA Corporation 
 +  OpenGL renderer string: GeForce GTX 1660 Ti/​PCIe/​SSE2 
 +  OpenGL version string: 4.6.0 NVIDIA 450.66</​code>​
  
-==== Solutions ====+Sans les commandes Prime Render, on obtiendrait le processeur graphique intégré comme réponse
  
-  ​* Si l'on possède déjà un portable OptimusRester sous Ubuntu tant que l'on n'a besoin que de la puissance de l'​IGP ​(bureautique,​ vidéo...) et redémarrer sous Windows (qui luigère l'​Optimus sans problème) pour tout ce qui demande plus de ressources 3D (jeux...)+  ​$ glxinfo | egrep "​(OpenGL vendor|OpenGL renderer|OpenGL version)"​ 
-  ​* Si on souhaite acquérir un portableBien se renseigner sur la présence d'​Optimus ou d'​autres technologies d'​affichage hybrideLe mieux étant de les éviter, pour l'​instantA défaut, mieux vaut prendre une machine pourvue d'un IGP __OU__ d'un GPU, mais pas les deux.+  $ OpenGL vendor stringX.Org 
 +  $ OpenGL renderer string: AMD RENOIR ​(DRM 3.38.05.8.8-050808-generic,​ LLVM 10.0.0) 
 +  ​$ OpenGL version string4.6 (Compatibility Profile) Mesa 20.0.8
  
-===== Voir aussi =====+Apparemment pour le moment l'​utilisation du processeur Nvidia ne peut pas être automatisé (contrairement à windows). 
 +Pour utiliser votre carte nvidia, il faut lancer la commande plus haut, avec le nom de l'​application de votre choix, par exemple :​ 
 +<​code>​__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia supertuxkart</​code>​
  
 +Il est possible d'​installer un applet propre à [[:mate]], il s'agit de [[apt>​mate-optimus]].
 +
 +Si cela ne fonctionne pas, vous pourrez trouver plus d'​informations ici :
 +  * [[https://​us.download.nvidia.com/​XFree86/​Linux-x86_64/​450.57/​README/​primerenderoffload.html|Le site Nvidia]],
 +  * [[https://​wiki.debian.org/​NVIDIA%20Optimus#​PRIMEOffload|Le wiki Debian]].
 +
 +==== Points Divers ====
 +
 +Voici quelques points qu'il convient de signaler :
 +
 +  * Certains ordinateurs proposent dans leur BIOS de désactiver le mode hybride et de n'​utiliser que la carte graphique nVidia et/ou Intel. Le cas échéant, l'​utilisation d'un des projets présenté ci-dessus n'est pas nécessaire. Dans le cas où seule la carte Intel est active, tout est automatique,​ dans le cas où seule la carte nVidia est active, il suffit de procéder à l'​installation du pilote nvidia comme on le ferait pour tout autre machine.
 +
 +
 +===== Voir aussi =====
   * **(fr)** [[http://​www.nvidia.fr/​object/​optimus_technology_fr.html|Page officielle de nVidia concernant Optimus]]   * **(fr)** [[http://​www.nvidia.fr/​object/​optimus_technology_fr.html|Page officielle de nVidia concernant Optimus]]
-  * **(en)** [[http://​linux-hybrid-graphics.blogspot.com/​|Le blogue Linux Hybrid Graphics]] 
   * **(en)** [[https://​launchpad.net/​~hybrid-graphics-linux|Groupe Hybrid Graphics Linux]] sur Launchpad   * **(en)** [[https://​launchpad.net/​~hybrid-graphics-linux|Groupe Hybrid Graphics Linux]] sur Launchpad
-  * **(en)** [[https://bugs.launchpad.net/​ubuntu/​+source/​xorg-server/​+bug/​312756|Rapport de bogue #312756 : « support ​graphics ​card hot switch »]] sur Launchpad, où vous pouvez signaler que ce bogue vous affecte +  * **(en)** [[http://linux-hybrid-graphics.blogspot.com/|Le blog Linux Hybrid Graphics]] 
-  * **(en)** Discussion [[http://​www.nvnews.net/vbulletin/​showthread.php?​t=153321|« No Optimus support means NO Nvidia at all or no dynamic switching?​ »]] sur le forum nV News +  * **(en)** [[wp>Nvidia Optimus]] sur Wikipédia 
-  * **(en)** [[wp>Nvidia_Optimus]] sur Wikipedia, avec une liste des portables équipés de la technologie Optimus +  * **(en)** [[https://​airlied.livejournal.com/​|Le blogue de David Airlie]], développeur de nouveau, travaillant sur le support d'​Optimus sous Linux 
-  * **(en)** [[http://​airlied.livejournal.com/​]] ​un gars qui bosse le sujet+
 ----- -----
  
-// Contributeur principal ​: [[:​utilisateurs:​eternal404]]//.+// Contributeurs ​: [[:​utilisateurs:​archangegabriel]]//
  • nvidia_optimus.1291249228.txt.gz
  • Dernière modification: Le 02/12/2010, 01:20
  • par 93.158.9.190