Forum Linux.général Couper l'alimentation d'une carte graphique

Posté par . Licence CC by-sa
2
22
juil.
2014

Bonsoir,

Je viens d'ajouter une carte graphique Nvidia à mon PC mais le soucis c'est qu'elle fait beaucoup de bruit (ventilo) et consomme beaucoup (enfin moins de 10W en veille mais cela me gêne quand même car mon PC est allumé 24h/24).
Je n'utilise cette carte que pour les jeux, donc la plupart du temps la puce graphique intégrée à mon processeur intel (i3) me suffit amplement.
Dans mon BIOS je peux choisir au démarrage ma carte vidéo (intel ou nvidia) mais même si je choisis intel, la carte nvidia est toujours alimentée (et ventilateur continue de ronfler).

Est-ce qu'il existe un moyen logiciel sous linux de couper complètement l'alimentation d'un port PCI-express ?
Ou bien est-ce que les pilotes libres ou propriétaires Nvidia permettent de mettre la carte dans un sommeil profond (où cela ne consomme plus rien et où le ventilo est éteint) ?
Je crois hélas qu'il n'existe pas de carte mère permettant de couper l'alimentation du port PCI-express ?

Le modèle de la carte Nvidia n'est pas important (je pense la renvoyer de toute façon), tout comme la distribution !
Si vous avez un couple carte graphique / distribution qui permet d'éteindre complètement la carte graphique, cela me va !

Merci,

  • # ma vie

    Posté par . Évalué à 2.

    j'ai une GT460, j'ai une ubuntu 14.04 avec le pilote libre
    et pourtant la carte ne fait pas de bruit

    tu peux essayer avec le pilote proprio, qui sera peut-etre plus à meme de modifier le reglage du ventilo.

    • [^] # Re: ma vie

      Posté par . Évalué à 1.

      Salut !

      Il existe aussi des nouvelles cartes Nvidia qui arrêtent complètement le ventilateur en cas d'inactivité (ou si la température passe sous un seuil je ne sais plus). Ou je peux me tourner vers les cartes graphiques passives aussi.

      Mais c'est aussi la consommation qui me gêne. 10W ce n'est pas beaucoup mais pour un PC allumé 24h/24 cela m'embête.

      Donc si j'avais un moyen de couper complètement la carte ce serait super !

      • [^] # Re: ma vie

        Posté par . Évalué à 3. Dernière modification le 22/07/14 à 22:38.

        met un switch sur l'alim

        tu decharges le module et tu coupes l'alim

        • [^] # Re: ma vie

          Posté par . Évalué à 1.

          Pas bête mais sur les cartes basse consommation qui m'intéressent (Nvidia Maxwell), il n'y a pas vraiment d'alimentation autre que celle fournie par le port PCI-express.
          Donc je ne peux pas vraiment couper le port lui-même…

          Mais bon je retiens l'idée !

  • # Peut-être

    Posté par (page perso) . Évalué à 4.

    Ce n'est pas supporté par toutes les cartes mères et quand c'est le cas, ce n'est toujours supporté par le noyau mais il semblerait qu'il soit possible d'avoir quelque chose avec /sys/bus/pci_express/devices/<dev id>/power/ et après il faut faire un echo 0 dans le bon fichier mais je ne sais pas lequel (j'imagine le control mais je ne suis pas sûr). Et je n'ai pas envie de tester ici parce que je n'ai qu'une seule CG en pcie.

    « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Peut-être

      Posté par . Évalué à 2.

      j'ai une belle serie possible dans le dossier

      async  autosuspend_delay_ms  control  runtime_active_kids  runtime_active_time  runtime_enabled  runtime_status  runtime_suspended_time  runtime_usage
      

      mais je suis joueur, j'ai la main en ssh, alors je tente, mais le echo "0">control me renvoi une erreur

      -su: echo: write error: Invalid argument

      et je ne vois pas pourquoi ca parle de -su car je suis avec le compte root.

      • [^] # Re: Peut-être

        Posté par . Évalué à 1.

        J'ai trouvé quelques pages sur le sujet ici :
        http://superuser.com/questions/321657/how-can-i-tell-windows-or-linux-to-put-a-specific-pcie-device-into-sleep-off
        http://www.dslreports.com/forum/r25280447-How-to-disable-graphics-card-via-sysfs

        J'ai donc essayé
        echo -n "auto" > /sys/bus/pci_express/devices/0000:00:01.0:pcie08/power/control
        echo -n "0000:00:01.0" > /sys/bus/pci/drivers/pcieport/unbind

        Du coup 0000:00:01.0 disparaît bien de /sys/bus/pci/drivers/pcieport et de /sys/bus/pci_express/devices, mais par contre le ventilateur tourne toujours donc cela ne fonctionne pas (en tout cas pas sur ma configuration avec un noyau 3.14).

        C'est vraiment dommage car cela aurait été une belle bidouille.

        D'autres idées ?

        Merci !

        • [^] # Re: Peut-être

          Posté par (page perso) . Évalué à 3.

          Pour moi, ce n'est certainement pas auto qu'il faut mettre mais quelque chose comme off, cependant, je ne trouve pas de liste de valeur. Sinon, tu peux aussi regardé du côté des solutions pour Nvidia Optimus qui permettent d'éteindre la carte graphique et qui marcheront peut-être dans ton cas.

          Avec un noyau et un Xorg récent, c'est censé fonctionner presque tout seul, mais la réalité est un peu plus buggée. Je pense qu'il vaut mieux se tourner vers Bumblebee.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

          • [^] # Re: Peut-être

            Posté par . Évalué à 1.

            Extrait de https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-devices-power :

            What:       /sys/devices/.../power/control
            Date:       January 2009
            Contact:    Rafael J. Wysocki <rjw@rjwysocki.net>
            Description:
                    The /sys/devices/.../power/control attribute allows the user
                    space to control the run-time power management of the device.
            
                    All devices have one of the following two values for the
                    power/control file:
            
                    + "auto\n" to allow the device to be power managed at run time;
                    + "on\n" to prevent the device from being power managed;
            
                    The default for all devices is "auto", which means that they may
                    be subject to automatic power management, depending on their
                    drivers.  Changing this attribute to "on" prevents the driver
                    from power managing the device at run time.  Doing that while
                    the device is suspended causes it to be woken up.
            

            Pour les Nvidia Optimus c'est effectivement Bumblebee et bbswitch mais je doute que cela fonctionne vraiment avec une Nvidia classique.

            • [^] # Re: Peut-être

              Posté par (page perso) . Évalué à 3.

              Pour les Nvidia Optimus c'est effectivement Bumblebee et bbswitch mais je doute que cela fonctionne vraiment avec une Nvidia classique.

              Je ne vois pas pourquoi. Sauf les cartes classiques ne peuvent s'éteindre mais alors tu as ta réponse.

              « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

              • [^] # Re: Peut-être

                Posté par . Évalué à 1.

                J'avais trouvé un seul gars ayant essayé :
                https://github.com/Bumblebee-Project/Bumblebee/issues/293
                Et le résultat est pas glorieux…

                Les mainteneurs de bbswitch pensent qu'il n'est pas possible de couper l'alimentation complètement comme sur un ordi portable avec Optimus.

                On peut essayer de forcer un "low power" mode mais je crois que je suis déjà en mode low power (10W ce n'est pas beaucoup pour une carte graphique, même si c'est beaucoup pour moi dans l'absolu). Le seul moyen d'améliorer c'est de couper complètement l'alimentation je pense.

                Enfin je vais quand même essayer, on verra bien.

                • [^] # Re: Peut-être

                  Posté par . Évalué à 1.

                  bbswitch ne fonctionne pas : la carte n'est tout simplement pas compatible (ce qui ne m'étonne guère) et impossible de la mettre dans un état "low power state" autre que celle par défaut.

                  Je vais sans doute essayer de partir sur du AMD Radeon qui possède un mode zerocore qui devrait me convenir.

                  • [^] # Re: Peut-être

                    Posté par . Évalué à 2.

                    et plus simplement, la mise en veille ne suffit plus ?
                    meme en deepsleep ?

                    • [^] # Re: Peut-être

                      Posté par . Évalué à 1.

                      La mise en veille du PC complet ou de la carte ?
                      Je ne peux pas mettre le PC complet en veille (car je m'en sers).

                      La Nvidia gère automatiquement sa consommation, je n'ai normalement pas besoin de mettre les mains dans le cambouis. C'est juste qu'elle consomme près de 10W lorsqu'elle ne fait rien.

                      Après quelques recherches, je crois que AMD est bien plus adapté dans mon cas d'utilisation avec leur techno zerocore (conso < 4W et ventilo éteint lorsque l'écran est éteint).

                      • [^] # Re: Peut-être

                        Posté par . Évalué à 2.

                        attention quand meme

                        pour utiliser certaines specificités AMD il faut les pilotes proprios, helas, il n'est pas reputé super stable.

                        donc si tu veux vraiment baisser la conso, la solution s'est peut-etre mettre un PC avec un IGP un peu plus consequent, virer la carte graphique et jouer sur l'IGP.

                        • [^] # Re: Peut-être

                          Posté par . Évalué à 1.

                          pour utiliser certaines specificités AMD il faut les pilotes proprios, helas, il n'est pas reputé super stable.

                          Hélas je sais bien. J'étais plutôt parti sur Intel+Nvidia pour éviter les problèmes de compatibilité avec linux (même si je sais que AMD fait plus d'effort envers le libre que Nvidia).
                          Mais bon il semblerait que Nvidia parte sur "basse conso en fonctionnement" et AMD "basse conso en idle". Et c'est bien le fonctionnement en idle qui m'intéresse (joueur occasionnel).

                          donc si tu veux vraiment baisser la conso, la solution s'est peut-etre mettre un PC avec un IGP un peu plus consequent, virer la carte graphique et jouer sur l'IGP.

                          Pour des jeux basiques, c'est une solution possible.
                          Pour des jeux intensifs d'un point de vue graphique, c'est difficile de se passer d'une carte graphique dédiée si tu veux jouer avec un minimum de détails.

                          C'est vraiment dommage car hormis ce comportement des Nvidia en idle, j'avais toutes les pièces en main !

                      • [^] # Re: Peut-être

                        Posté par (page perso) . Évalué à 3.

                        Certaines nvidia récentes ont aussi un ventilo qui s'éteint quand elles ne font rien.

                        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

                        • [^] # Re: Peut-être

                          Posté par . Évalué à 1.

                          Tu veux parler des Nvidia Stryx ?

                          Je surveille d'un oeil pour voir les performances. Mais je crois que cela va résoudre le problème du bruit mais pas celui de la conso. J'attends les tests !

                          • [^] # Re: Peut-être

                            Posté par (page perso) . Évalué à 3.

                            ais je crois que cela va résoudre le problème du bruit mais pas celui de la conso.

                            Oui, les cartes desktop n'ont pas vraiment l'air d'être prêtes pour réduire la consommation.

                            « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

                            • [^] # Re: Peut-être

                              Posté par . Évalué à 1.

                              Oui, les cartes desktop n'ont pas vraiment l'air d'être prêtes pour réduire la consommation.

                              Cela dépend : Nvidia a réussi à réduire la consommation en fonctionnement de manière spectaculaire (Maxwell). AMD a réussi à réduire la consommation en idle de manière spectaculaire (zerocore).

                              Je crois que je vais partir sur du AMD pour voir. Mais il semblerait que les cartes consomment beaucoup plus que les Maxwell de Nvidia en fonctionnement (j'aurais aimé rester sous la barre des 180W), qu'au format low profile il n'y a que des trucs un peu vieux et pas très performant (HD 7750) et enfin que la compatibilité des pilotes propriétaires avec linux est moins bonne comparée à Nvidia.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.