Et tu obtiens la liste de toutes les cartes disponibles avec un numéro devant.
Puis après ça tu fais:
DRI_PRIME=1 glxgears
pour lancer glxgears (ou toute autre application) sur la seconde carte graphique (la première étant la 0).
À aucun moment l’utilisateur ne redémarre sa session ou son ordinateur, c’est complètement transparent, si tu as trois carte graphiques, trois applications peuvent utiliser chacune une carte pour calculer le rendu et afficher le résultat sur le même bureau et le même écran qui serait piloté par une des trois cartes.
J’ai pu vérifier ça avec les pilotes libres Intel et AMD (radeonsi mais aussi ancien r600) et nouveau.
Ce qui est super cool parce qu’en tant que développeur, tu pourrais acheter une carte mère avec plein de ports PCI, mélanger plein de cartes de chacun des vendeurs et tester le jeu sur telle ou telle carte de telle ou telle marque et de telle ou telle génération en changeant simplement une variable d’environnement.
Mais en fait, il existe Nvidia, et donc pour tester une Nvidia après une AMD ou une Intel il faut remplacer la quasi intégralité de la pile graphique et rebooter, et pour tester trois générations de Nvidia il faut remplacer la quasi intégralité de la pile graphique et rebooter autant de fois, et pour tester une carte AMD, Intel ou même Nouveau après ça il faut encore remplacer la quasi intégralité de la pile graphique et rebooter.
Je sais que cette phrase va battre en brèche les idées reçues, mais Nvidia est la pire solution pour un développeur de jeu (avec le biais que je suis sous Linux, mais pour commencer Linux est meilleur que Windows et macOS pour développer tout court).
De même que mon constat concernant la qualité des pilotes est contraire aux idées reçu : on implémente plus de contournements pour Nvidia dans le moteur Dæmon que pour tout autre pilote. Souvent on entend dire que les drivers Nvidia sont de meilleure qualité que les autres, pour me frotter au développment un moteur de jeu commence à me faire penser qu’en fait les développeurs qui disent cela utilisent probablement des moteurs et frameworks tiers qui implémentent les contournement pour eux, et peut-être pas autant pour Intel et AMD. Ce qui donnerait l’impression au final que leurs jeux tourneraient mieux sur Nvidia qu’autre chose même s’il y aurait en réalité plus de bugs sur Nvidia.
Bref, oui il y a des solutions pour Nvidia, qui demandent éventuellement de modifier la ligne de boot de Linux (config GRUB), éditer un fichier xorg.conf comme en l’an 2001 (quand on aura 20 ans), et de trouver une solution pour démarrer une commande à l’ouverture de session, personnellement je ferai un fichier .desktop en autostart qu’éditer le .bashrc (je ne l’ai pas testé, mais ça devrait ressembler à ça):
mkdir -p "${XDG_CONFIG_HOME:-${HOME}/.config}/autostart"
cat > "${XDG_CONFIG_HOME:-${HOME}/.config}/autostart/xrandr-prime-1.desktop"<<\EOF[Desktop Entry]Version=1.0Name=xrandr set PRIME 1Comment=Configure xrander PRIME synchronizationIcon=video-displayExec=xrandr --set "PRIME Synchronization" 1Terminal=falseType=ApplicationHidden=trueEOF
chmod +x "${XDG_CONFIG_HOME:-${HOME}/.config}/autostart/xrandr-prime-1.desktop"
C’est pas pour rien que je dis parfois que si je devais composer un slogan pour Nvidia ce serait « Nvidia, vous fournir une expérience graphique comme en l’an 2000, plus rapide » ("Nvidia, bringing you year 2000 graphics experience, faster").
Alors oui il existe des solutions pour faire tomber en marche Nvidia, qui impliquent parfois de faire des trucs que plus personne ne fait et donc que tout le monde a oublié comme éditer un xorg.conf, et qui requièrent souvent des ajustements selon l’âge du capitaine.
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Nvidia et Optimus
Posté par Thomas Debesse (site web personnel, Mastodon) . En réponse au journal J'ai acheté Lenovo Ideapad 3 gaming ryzom7 geforceGTX 1650ti/amd radeon, la suite va vous étonner.... Évalué à 10.
Sauf qu’avec les pilotes libres Mesa, tu fais ça:
Et tu obtiens la liste de toutes les cartes disponibles avec un numéro devant.
Puis après ça tu fais:
pour lancer
glxgears(ou toute autre application) sur la seconde carte graphique (la première étant la0).À aucun moment l’utilisateur ne redémarre sa session ou son ordinateur, c’est complètement transparent, si tu as trois carte graphiques, trois applications peuvent utiliser chacune une carte pour calculer le rendu et afficher le résultat sur le même bureau et le même écran qui serait piloté par une des trois cartes.
J’ai pu vérifier ça avec les pilotes libres Intel et AMD (radeonsi mais aussi ancien r600) et nouveau.
Ce qui est super cool parce qu’en tant que développeur, tu pourrais acheter une carte mère avec plein de ports PCI, mélanger plein de cartes de chacun des vendeurs et tester le jeu sur telle ou telle carte de telle ou telle marque et de telle ou telle génération en changeant simplement une variable d’environnement.
Mais en fait, il existe Nvidia, et donc pour tester une Nvidia après une AMD ou une Intel il faut remplacer la quasi intégralité de la pile graphique et rebooter, et pour tester trois générations de Nvidia il faut remplacer la quasi intégralité de la pile graphique et rebooter autant de fois, et pour tester une carte AMD, Intel ou même Nouveau après ça il faut encore remplacer la quasi intégralité de la pile graphique et rebooter.
Je sais que cette phrase va battre en brèche les idées reçues, mais Nvidia est la pire solution pour un développeur de jeu (avec le biais que je suis sous Linux, mais pour commencer Linux est meilleur que Windows et macOS pour développer tout court).
De même que mon constat concernant la qualité des pilotes est contraire aux idées reçu : on implémente plus de contournements pour Nvidia dans le moteur Dæmon que pour tout autre pilote. Souvent on entend dire que les drivers Nvidia sont de meilleure qualité que les autres, pour me frotter au développment un moteur de jeu commence à me faire penser qu’en fait les développeurs qui disent cela utilisent probablement des moteurs et frameworks tiers qui implémentent les contournement pour eux, et peut-être pas autant pour Intel et AMD. Ce qui donnerait l’impression au final que leurs jeux tourneraient mieux sur Nvidia qu’autre chose même s’il y aurait en réalité plus de bugs sur Nvidia.
Bref, oui il y a des solutions pour Nvidia, qui demandent éventuellement de modifier la ligne de boot de Linux (config GRUB), éditer un fichier
xorg.confcomme en l’an 2001 (quand on aura 20 ans), et de trouver une solution pour démarrer une commande à l’ouverture de session, personnellement je ferai un fichier.desktopen autostart qu’éditer le.bashrc(je ne l’ai pas testé, mais ça devrait ressembler à ça):C’est pas pour rien que je dis parfois que si je devais composer un slogan pour Nvidia ce serait « Nvidia, vous fournir une expérience graphique comme en l’an 2000, plus rapide » ("Nvidia, bringing you year 2000 graphics experience, faster").
Alors oui il existe des solutions pour faire tomber en marche Nvidia, qui impliquent parfois de faire des trucs que plus personne ne fait et donc que tout le monde a oublié comme éditer un
xorg.conf, et qui requièrent souvent des ajustements selon l’âge du capitaine.ce commentaire est sous licence cc by 4 et précédentes