Как мне настроить регулятор частоты процессора для всех ядер сразу?

Нашел решение: у меня первоначально был принтер, работающий под 11.10 с michael gruz ppa, но это больше не работало в 12.04, и попытка установить из диспетчера печати Ubuntu тоже не работала.

I нашел michael gruz ppa, который был обновлен для 12.04: https://code.launchpad.net/~michael-gruz/+archive/canon-trunk/+packages

Сначала я удалил старый драйвер с помощью Synaptic Package Manager, а затем добавил новый:

sudo add-apt-repository ppa:michael-gruz/canon-trunk
sudo apt-get update
sudo apt-get install cnijfilter-mx870series

После этого работала установка принтера с менеджером печати. ​​

31
задан 6 January 2011 в 12:58

65 ответов

кратчайшая команда изменения регулятора всех ядер следующая:

  sudo bash -c 'для i в {0..7};  do cpufreq-set -c $ i -g производительность;  done ' 

Вы можете добавить его в .bashrc, как упомянутый htorque, вам нужно будет запустить его как root sudo setgov performance :

   function setgov () {для i в {0..7};  do cpufreq-set -c $ i -g $ 1;  сделано}  
4
ответ дан 13 August 2018 в 16:49

Способ, которым я устанавливал это, поскольку регулятор по умолчанию возвращается к powersave примерно через 30 секунд с Ubuntu 16.04 или раньше (я на Ubuntu Mate);

  1. Положите это ( одна строка) кода (спасибо, любезность switch87 в предыдущем ответе) sleep 60 & amp; & amp; & amp; bash -c 'для i в {0..7}; do cpufreq-set -c $ i -g производительность; done
  2. в файл в каталоге /etc/rc.local

Mine - это строка выше «exit 0 "и без комментариев, по комментариям.

" rc.local "для тех, кто этого не знает, он выполняет команду как sudo. Любая команда, которая, кажется, изменит регулятор, должна быть запущена как sudo.

Позволяет правителю сбрасывать обратно на powerave и запускает код как sudo через 60 секунд, чтобы изменить его на производительность.

Измените «60» (в коде, который вы копируете), в любое время (в секундах 60 = 60 секунд = 1 минута) вам нужно задержать команду и «производительность» (в части команд), чтобы который вы хотите изменить.

Из моих часов и часов поиска я не нашел более постоянного исправления для этого, чем это. Я понимаю, что за пару минут, что это на powersave, если это лучшее исправление, которое я нашел, правильно? Правильно.

Не лучшее исправление, но оно делает его несколько постоянным, после того, как он немного переключится на режим powerave. Если вы хотите загрузиться прямо и перейти в игру или что-то, что вам нужно будет подождать минуту для кода, который вы только что включили, чтобы переключить его обратно с режима powerave или уменьшить время на нем (в зависимости от того, сколько времени потребуется

И, как всегда, вернуться к умолчанию (я видел некоторые проблемы с перегревом ПК людей, поэтому они могут быть дефолтными в первую очередь), просто удалите код из rc.local и перезагрузите его или переключите обратно вручную с помощью переключателя индикатора значка cpu или запустите;

  sudo /etc/init.d/  cpufrequtils перезапускает  

в терминале и / или перезагружается.

0
ответ дан 13 August 2018 в 16:49

Я все еще Linux noob, но вы не думаете, что cpufrequtils позволяет делать это, используя (его не входит в Ubuntu OS, но есть в репозитории)

  sudo apt  -get install cpufrequtils sudo cpufreq-set -r -g performance  
  • Флаг -r используется для установки изменения для всех («все аппаратные средства» связанных ")
18
ответ дан 13 August 2018 в 16:49
  • 1
    Параметр -r не делает этого для всех ядер. Мы должны указать номер процессора с опцией -c & lt; number & gt; однако этот скрипт сделает это для всех cpus за один раз: for ((i = 0; i & lt; $ (nproc); i ++)); do cpufreq-set -c $ i -r -g performance; сделанный – Sri 11 September 2014 в 14:50
  • 2
    Именно, @Sri прав. cpufreq-set фактически не имеет в конечном счете простую, но необходимую функциональность. Многие люди, как ясно показывают эти показания, просто не знают об этом, потому что его описание просто вводит в заблуждение, чтобы справиться с этим. – poige 27 October 2015 в 20:43
  • 3
    Кто дает эти + 1 без тестирования ???? Это не работает вообще. Я опубликовал простейшее рабочее решение, которое я смог найти. – switch87 1 December 2016 в 16:51

Основываясь на ответе switch87, я сделал простой скрипт cpufreq-set-all , который позволит выполнять другие cpufreq-set вещи со всеми процессорами:

  #! / bin / bash MAX_CPU = $ ((`nproc --all` - 1)) для i в $ (seq 0 $ MAX_CPU);  do echo «Изменение ЦП« $ i »с параметром« $ @;  cpufreq-set -c $ i $ @;  done  

Теперь он может быть вызван (после chmod + x , конечно) следующим образом:

  cpufreq-set-  all -g powersave  

или

  cpufreq-set-all -f 800Mhz  
0
ответ дан 13 August 2018 в 16:49

Мог бы добавить дополнение кода bash, пока мы на нем:

  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  
1
ответ дан 13 August 2018 в 16:49

Другие вопросы по тегам:

Похожие вопросы: