Что такое регуляторы?
Регулятор - это режим управления частотой процессора, который выбирает его частоту и загруженность.
Какие есть регуляторы?
В основном от количества и содержания их зависит драйвер. О доступных регуляторах можно узнать на панели добавив «график процессора» в элементах и для gnome:
https://extensions.gnome.org/extension/47/cpu-frequency/
Какие бывают регуляторы?
Из основных:
OnDemand
В большинстве стоковых ядер (то есть тех, что поставляются с гаджетом от производителя) он установлен по умолчанию. Основная цель данного регулятора — повышение частоты до максимально возможной как только появляется нагрузка на процессор, чтобы обеспечить максимальную отзывчивость системы. Грубо говоря, каждый раз данный говернер ставит перед собой вопрос: насколько нагружен процессор и стоит ли мне повышать частоту? Через заданные промежутки времени (sampling_rate: ~ 10-20 миллисекунд) проверяет загрузку процессора и при достижении определенного порога (up_threshold ~80%) повышает частоту до максимума пока загрузка процессора не снизится. Даже несмотря на то, что большая часть пользователей считает данный говернер оптимальным, он совершенно не заботится о расходе вашей батарейки. Да, система с ним быстро работает, но практически постоянно ресурсы процессора расходуются вхолостую. Кроме того, он не содержит профилей для выключенного экрана, что также не дает никакой экономии энергии пока смартфон лежит и бездействует.
Powersave
Понижает максимальную частоту до минимально доступной для выполнения задачи. Таким образом, что и следует из названия, потребляет очень мало энергии, однако за счет этого устройство будет чудовищно лподтормаживать при нагрузке чуть более высокой, нежели минимальная.
Performance
Работает с точностью да наоборот по сравнению с предыдущим: постоянно использует максимально доступную частоту процессора. Пользоваться им в повседневной жизни не стоит, так как аппарат очень сильно греется, ведь процессор постоянно в напряжении.
Conservative
«Медленная» версия OnDemand, крайне неохотно повышающая частоту процессора. При отсутствии нагрузки данный говернер использует минимально доступную частоту постоянно. Изменение частоты вверх и вниз происходит не скачком, а постепенно. По сравнению с OnDemand медленнее отклик, однако больше экономит заряд батареи.
Userspace
Для ручного задания частот. Позволяет целиком и полностью настроить работу процессора. Не рекомендуется и практически не используется из-за сложностей в настройке.
Scary
Основан на исходниках Conservative с добавлением фич smartass. Не очень ясно зачем его было разрабатывать, так как у Conservative медленное изменение частоты, а у Smartass одно из самых быстрых.
Подробнее:
https://pingvinoff.net/governor-cpu
На что нужно обратить внимание при выборе регулятора процессора:
- Скорость. Обычно большая скорость несколько снижает срок работы отаккумулятора, так что стоит смотреть не только на производительность, но и на то, как себя ведет батарея при этой скорости работы. Если не собираетесь играть в требовательные к производительности игры, стоит искать баланс между скоростью работы и автономностью.
- Автономность. Обычно при увеличении срока службы устройства при работе отбатареи заметно страдает производительность: гаджет начинает подтормаживать при требовательных к ресурсам операциях, пропадает плавность, а бывает, что и просто появляются зависания. Тут также стоит методом проб и ошибок найти баланс.
- Стабильность. Некоторые «гувернеры» ведут себя крайне нестабильно наодном девайсе, и довольно неплохо на других… Тут много зависит от того, насколько открыт исходный код ядра производителем, комбинаций различных патчей и… настроения разработчика Чаще всего, выясняется методом тестирования на собственном гаджете.
- Плавность. Это неодно и тоже, что и первый пункт: смартфон может работать быстро, однако совершенно не плавно. Проще всего проверяется прокруткой длинных списков вниз/вверх или просто открытием/закрытием приложений. Понятно, что если девайс работает быстро, но рывками, впечатление от пользования им будет совсем не то…
Как поменять регулятор ?
Тут всё не сложно, ведь режим регулятора лежит в /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor.
Где (*) - это номер ядра процессора.
Для получении информации о ядрах в терминале пишем:
sudo apt upgrade
sudo apt install cpufreq-info
И для вывода информации:
cpufrequtils
Для этого есть скрипт:
#!/bin/sh
for cf in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
do
echo performance > $cf;
#echo powersave > $cf;
done
Чтобы скрипт заработал создаем файл modecpu1.sh с содержимым скрипта:


И для запуска скрипта надо открыть терминал в нашей директории и выполнить:
touch modecpu1.sh
chmod +x modecpu1.sh
И выполняем:
sudo ./modecpu1.sh
После этого процессор перейдет в режим performance.
А для перехода в обычный режим, то есть powersave,
разкомментируем строку #echo powersave > $cf; :

И выполняем скрипт:
sudo ./modecpu1.sh
И всё в изначальном виде.
Теперь рассмотрим скрипт:
#!/bin/sh
for cf in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
do
echo performance > $cf;
#echo powersave > $cf;
done
И нам интересна строка echo performance > $cf;
Где вместо performance можно поставить любой режим например : ondemand и получается:
#!/bin/sh
for cf in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
do
echo ondemand > $cf;
#echo powersave > $cf;
done
И так можно выбрать любой регулятор, который поддерживает драйвер.
А ещё можно поставить регулятор на каждое ядро.

Для этого вместо (*) пишем номер ядра и регулятор:
#!/bin/sh
for cf in /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor;
do
echo performance > $cf;
#echo powersave > $cf;
done
for cf in /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor;
do
echo ondemand > $cf;
#echo powersave > $cf;
done
И так для каждого ядра.
Как добавить режим в автозагрузку?
1)Переходим в настройки/Сеансы и запуск/Автозапуск
2)Жмём добавить, заполняя Имя и Описание:

3) В Команда указываем путь к файлу:

И скрипт в автозапуске!
Скрипт будет оптимизировать работу ПК, особенно на слабом железе! Пример: 2-х ядерный пень или Celeron!
Комментарии
Отправить комментарий