46 votes

Comment régler le régulateur d'échelle de fréquence du processeur pour tous les cœurs à la fois ?

J'aimerais régler le régulateur d'échelle de fréquence du CPU pour tous les cœurs en même temps au lieu de le faire individuellement pour chaque cœur. Existe-t-il un moyen de le faire ?

(Je sais qu'il serait facile de se faire l'écho du gouverneur pour /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor mais je ne cherche pas de solution personnalisée).

28voto

Maciek Gryka Points 1807

J'ai beaucoup cherché sur Google et je pense que ce n'est tout simplement pas possible. .bashrc :

function setgov ()
{
    echo "$1" | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 
}

Je peux maintenant exécuter quelque chose comme setgov ondemand et tous les cœurs passeront à l'option à la demande gouverneur.

27voto

user49449 Points 41

Je suis encore un noob de linux mais ne pensez-vous pas que cpufrequtils permet de le faire en utilisant (il n'est pas inclus dans le système d'exploitation Ubuntu mais il est présent dans le dépôt)

sudo apt-get install cpufrequtils
sudo cpufreq-set -r -g performance
  • En -r est utilisé pour définir le changement pour tous les cœurs ("tous les cœurs liés au matériel")

10voto

switch87 Points 200

La commande la plus courte pour changer le gouverneur de tous les cœurs est la suivante :

sudo bash -c 'for ((i=0;i<$(nproc);i++)); do cpufreq-set -c $i -g performance; done'

Vous pouvez l'ajouter à .bashrc comme l'a mentionné htorque setgov performance :

function setgov ()
{
     for i in {0..7}; 
     do 
         sudo  cpufreq-set -c $i -g $1; # run cpufreq-set with root
     done
}

5voto

Martin Andersson Points 151

Vous pouvez le faire pour tous les cœurs à la fois en exécutant

sudo cpupower frequency-set --governor performance

3voto

Ray Malanga Points 31

On pourrait aussi ajouter la complétion de code bash, tant qu'on y est :

function setgovernor () {
    echo "$1" | sudo tee 
    /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 
}
complete -W "$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors)" setgovernor

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X