Carte Nvidia non détectée par Firefox sous Linux

Vos requêtes concernant Mozilla Firefox, le navigateur Gecko alternatif, ne trouvèrent point de réponses lorsque vous cherchâtes ? Toute l'équipe Geckozone est prête à vous aider.

Modérateurs : nico@nc, Mori, jpj, myahoo

NovHak
Arias
Messages : 14
Inscription : 19 nov. 2022, 08:01

Carte Nvidia non détectée par Firefox sous Linux

Message par NovHak »

Bonjour à tous !

Je suis sous Linux (Ubuntu 23.04). J’ai découvert hier en essayant de jouer à un jeu WebGL que ma carte Nvidia (RTX 3070 Laptop) n’était pas détectée par Firefox. Voici ce que retourne la page about:support :

  • GPU 1 : llvmpipe (rendu logiciel)

  • GPU 2 : Graphiques Intel

Pourtant les jeux fonctionnent bien, hors Firefox, et la carte Nvidia est bien utilisée, comme il est aisé de le vérifier avec par exemple la commande « glxgears -info ». Pas de problème en revanche avec les graphiques Intel, Firefox les utilise bien lorsque je le souhaite.

Que faire pour que Firefox détecte correctement la carte Nvidia ? Quelqu’un a-t-il une idée ?

Avatar de l’utilisateur
Bob49
Animal mythique
Messages : 23550
Inscription : 10 mars 2006, 17:25

Re: Carte Nvidia non détectée par Firefox sous Linux

Message par Bob49 »

Salut

NovHak a écrit : 19 oct. 2023, 22:20

GPU 1 : llvmpipe (rendu logiciel)

Sauf erreur de ma part, cela veut dire que le pilote graphique de cette carte ne prend pas en charge l'accélération matérielle ! A confirmer par une autre personne...
Donc vérifie s'il n'y à pas un autre pilote disponible pour ta carte Nvidia !...

Sauvegardez le profil de votre Firefox , avant d'y faire des modifications(install, etc..) ;-)
"Le bonheur est souvent la seule chose qu'on puisse donner sans l'avoir, et c'est en le donnant qu'on l'acquiert." Voltaire
Image
NovHak
Arias
Messages : 14
Inscription : 19 nov. 2022, 08:01

Re: Carte Nvidia non détectée par Firefox sous Linux

Message par NovHak »

J’utilise le pilote le plus récent intégré à la distribution (535). Nvidia prend en charge l’EGL depuis un certain temps il me semble… Enfin bref, de toute évidence le problème est autre puisque j’ai réussi à le résoudre, mais je ne vois pas très clairement pourquoi ça a marché.

Ma méthode a consisté à passer en gestion à la demande (avec la commande prime-select on-demand), et redémarrer ensuite. À partir de là, si je lance Firefox en sollicitant le rendu sur Nvidia (__NV_PRIME_RENDER_OFFLOAD=1), ça marche : le GPU1 détecté par Firefox est « NVIDIA GeForce RTX 3070 Laptop GPU/PCIe/SSE2 », et le rendu est performant comme attendu.

Cela dit, d’habitude je ne procède pas comme ça. En effet, tant que je ne compte utiliser que la carte intégrée (Intel), je ne me contente pas de laisser en mode à la demande :

  1. Je passe en mode Intel (prime-select intel)

  2. Je ferme/rouvre la session

  3. Je supprime la carte Nvidia de la base de données PCI du système

Lorsque je décide d’utiliser la carte dédiée (Nvidia) :

  1. Je rescanne le hub PCI sur lequel elle est branchée, de façon à la rajouter de nouveau à la base PCI, et

  2. Je passe en mode Nvidia (prime-select nvidia)

  3. Je ferme/rouvre la session

Cette méthode est certes plus compliquée que de laisser simplement en mode à la demande tout le temps et d’activer la décharge de rendu (« Prime Render Offload ») lorsque souhaité, mais ce n’est pas pour rien. Lorsque le mode à la demande est activé, ou même en mode Intel mais sans retirer la carte dédiée de la base PCI, certains problèmes se posent :

  • Même lorsque je ne la sollicite pas, la carte dédiée s’allume pour un oui ou pour un non

  • Lorsqu’en plus le mode à la demande est activé, certains ralentissements peuvent se produire lors d’un allumage intempestif

Donc alors même qu’elle n’est pas utilisée, la carte peut « clignoter comme un arbre de Noël », ce qui est peu efficace d’un point de vue énergétique (pas sympa quand on est sur batterie), et susceptible de réduire sa durée de vie. Lorsque je ne l’utilise pas, elle doit rester éteinte. Une fois en mode Intel et avec Nvidia supprimé de la base PCI, il n’y a plus de clignotement (ou très rarement). Ce phénomène est très présent sous Windows également, où j’aimerais avoir une solution similaire, mais je n’ai rien trouvé de satisfaisant.

Lorsque je passe d’un mode Nvidia Prime à l’autre (entre Intel, Nvidia et à la demande), je ne redémarre pas entre les deux. Or, lors du changement de mode, l’utilitaire prime-select met à jour le disque mémoire initial (initramfs). Il est possible qu’en fonction du contenu de ce fichier, certaines actions se fassent qui rendent possible ou pas le rendu matériel depuis Firefox, mais je me demande bien de quoi il s’agit, surtout que par ailleurs, les jeux en OpenGL classique hors Firefox fonctionnent toujours bien.

Avatar de l’utilisateur
Bob49
Animal mythique
Messages : 23550
Inscription : 10 mars 2006, 17:25

Re: Carte Nvidia non détectée par Firefox sous Linux

Message par Bob49 »

Salut

Tu utilises la version de Firefox installée par défaut ou la version de Mozilla installé par toi-même ? Car avec la première, même si ce n'est pas un problème du navigateur, il peut y avoir des bugs dues au système d'installation !…
Voir aussi à d'autres dépendances, d'après ce que j'ai pu voir sur le web par rapport à ta carte RTX 3070…

Ce qui n'empêche pas que "llvmpipe", c'est totalement lié au pilote graphique de ta carte, donc peut-être y a-t-il un bug (non constant) dans la dernière version de celui-ci ? ! :|

Sauvegardez le profil de votre Firefox , avant d'y faire des modifications(install, etc..) ;-)
"Le bonheur est souvent la seule chose qu'on puisse donner sans l'avoir, et c'est en le donnant qu'on l'acquiert." Voltaire
Image
NovHak
Arias
Messages : 14
Inscription : 19 nov. 2022, 08:01

Re: Carte Nvidia non détectée par Firefox sous Linux

Message par NovHak »

J’utilise le Firefox fourni avec la distribution. Pour mon problème en tout cas, finalement ça n’est pas lié au fichier initrd. En fait depuis mon redémarrage je n’ai plus constaté le problème.

Par contre, tu dis que llvmpipe est totalement lié au pilote de ma carte, je ne suis pas d’accord, au contraire ! Il s’agit du pilote virtuel fourni par Mesa3D pour effectuer le rendu logiciel, indépendamment de toute carte graphique, et qui reporte la charge du rendu sur le processeur. D’ailleurs dans cette config, mon processeur tourne à fond dès que le jeu est un tant soit peu exigeant… et pour des perfs inférieures à 10 fps.

Quand j’ai constaté le problème, j’étais sur un système qui n’avait pas été redémarré depuis au moins dix jours, et je suis quasi sûr qu’il y avait eu une mise à jour des bibliothèques Nvidia pendant ce temps, donc peut-être que c’était juste ça… Il doit bien y avoir moyen de le corriger sans redémarrer, mais pour l’instant je ne sais pas lequel.

Je ne serais pas surpris que ce soit lié au fait que Firefox est un « snap » depuis un certain temps maintenant, et tourne dans un environnement logiciel confiné. Il y a un connecteur snap OpenGL qui est censé permettre à Firefox de bénéficier de l’accélération graphique, mais comment fonctionne ce connecteur, aucune idée. De toute façon c’est bien beau tout ce confinement, mais ça a clairement compliqué un certain nombre de choses : accès aux fichiers en local, impression, et donc probablement maintenant, accélération matérielle.

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Google [Bot], Semrush [Bot] et 1 invité