J'aimerais définir le régulateur d'échelle de fréquence de la CPU pour tous les cœurs en même temps au lieu de le faire individuellement pour chaque cœur. Y a-t-il un moyen de faire cela?
(Je sais qu'il serait facile de faire écho au gouverneur /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
, mais je ne cherche pas de solution personnalisée.)
Réponses:
Je suis toujours un noob linux mais vous ne pensez pas que cpufrequtils vous laisse le faire en utilisant (il n'est pas fourni dans le système d'exploitation Ubuntu mais se trouve dans le référentiel)
-r
drapeau est utilisé pour définir le changement pour tous les cœurs ("tous les matériels liés")la source
cpufreq-set
En fait, il manque des fonctionnalités simples mais indispensables. Comme le montrent clairement ces compteurs de votes, de nombreuses personnes ne le savent tout simplement pas, car sa description est tout simplement trompeuse.J'ai beaucoup cherché sur Google et je pense que ce n'est tout simplement pas possible. J'ai donc ajouté le lignage suivant à mon
.bashrc
:Maintenant, je peux exécuter quelque chose du genre
setgov ondemand
et tous les cœurs basculeront vers le gouverneur à la demande .la source
la commande la plus courte pour changer le gouverneur de tous les cœurs est la suivante:
Vous pouvez l'ajouter à .bashrc comme htorque mentionné, vous devrez l'exécuter en tant que root
sudo setgov performance
:la source
Autant ajouter du code bash, pendant que nous y sommes:
la source
La façon dont j'ai réglé le problème depuis que le gouverneur par défaut revenait à powersave après environ 30 secondes à compter de la version Ubuntu 16.04 ou plus récente (je suis sur Ubuntu Mate);
Mettez cette (une ligne de) code (merci, merci de switch87 dans la réponse précédente)
dans le fichier dans le répertoire
La mienne est une ligne au-dessus de "sortie 0" et non commentée, sous les commentaires.
"rc.local" pour ceux qui ne connaissent pas, il lance la commande en tant que sudo. Il semble que toute commande, pour changer de gouverneur, doit être exécutée en tant que sudo.
Il permet au gouverneur de réinitialiser la sauvegarde et de lancer le code en tant que sudo au bout de 60 secondes pour rétablir les performances.
Changez le "60" (dans le code que vous copiez) en n’importe quelle heure (en secondes. 60 = 60 secondes = 1 minute) vous devez retarder la commande et "performance" (dans la partie commande) à quel gouverneur vous voulez qu'il soit. changer à.
En dehors de mes heures et de mes heures de recherche, je n'ai pas trouvé de solution permanente à ce problème. Je suppose que quelques minutes sont consacrées à powersave s'il s'agit du meilleur correctif que j'ai trouvé, n'est-ce pas? Droite.
Ce n’est pas la meilleure solution, mais cela le rend un peu permanent une fois que c’est son changement qui passe à PowerSave. Si vous voulez démarrer correctement et vous lancer dans un jeu ou quelque chose comme ça, vous devrez attendre une minute pour le code que vous venez de mettre pour le remettre en place de PowerSave ou pour en réduire le temps (en fonction du temps que cela prend). tout pour démarrer afin que les performances reviennent correctement).
Et, comme toujours, pour revenir aux valeurs par défaut (j'ai constaté certains problèmes dus à une surchauffe des ordinateurs personnels, raison pour laquelle ils auraient peut-être modifié le mode d'économie d'énergie par défaut), il suffit de supprimer le code de rc.local et de le réinitialiser ou de le restaurer. manuellement avec votre commutateur d'indicateur d'icône cpu ou exécuter;
dans le terminal et ou redémarrez.
la source
Vous pouvez le faire pour tous les cœurs à la fois en exécutant
la source
En me basant sur la réponse de switch87, j'ai créé un script simple
cpufreq-set-all
, qui permettra d'effectuer d'autres opérationscpufreq-set
avec tous les processeurs:Maintenant, il peut être invoqué (après
chmod +x
, bien sûr) comme ceci:ou
la source