Режим энергопотребления CPU
Astra отправляет пакеты по строгому расписанию. Если процессор работает не на полной частоте, пакеты уходят с опозданием, и под нагрузкой выходной поток идёт неровно. На серверах переводите процессор в режим производительности.
Предупреждение на дашборде
Заголовок раздела «Предупреждение на дашборде»Веб-дашборд показывает такое предупреждение, когда политика энергосбережения на хосте удерживает частоту процессора ниже возможной:
The power saving policy holds the CPU on <host> below the clock it is capable of. This could impact application performanceОт чего оно появляется, зависит от драйвера процессора:
intel_pstateиamd-pstate-epp: предупреждение появляется, только еслиenergy_performance_preferenceравенpowerилиbalance_power. Параметр governor в значенииpowersaveздесь не мешает: частоту выбирает само железо, и turbo продолжает работать.- Остальные драйверы (
acpi-cpufreq,cppc_cpufreq,intel_cpufreq): предупреждение появляется при любом значении параметра governor, кромеperformance. При значенияхondemand,schedutilиconservativeчастота следует за нагрузкой: при рваной нагрузке от стриминга она остаётся на самом низком уровне и растёт только под длительной нагрузкой.
Выключенный turbo предупреждение не вызывает. Чтобы его убрать, переключитесь в режим performance. Ссылка “Read more” в предупреждении открывает страницу Tune.
“Do not show again” скрывает предупреждение для вашего пользователя на этом хосте. Чтобы увидеть его снова, снимите галочку “Hide CPU power save warning” в Settings → Interface.
Проверка текущего режима
Заголовок раздела «Проверка текущего режима»Утилита cpupower показывает драйвер, список доступных значений параметра governor и текущую политику. В Debian она входит в пакет linux-cpupower:
sudo apt-get updatesudo apt-get install linux-cpupowerВ Ubuntu она входит в linux-tools-common плюс пакет для запущенного ядра:
sudo apt-get updatesudo apt-get install linux-tools-common linux-tools-$(uname -r)cpupower frequency-infoЭти же значения можно прочитать прямо из sysfs. Достаточно проверить один процессор - на практике параметр governor одинаковый для всех процессоров машины:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_drivercat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governorcat /sys/devices/system/cpu/cpu0/cpufreq/energy_performance_preference| Драйвер | Что смотреть | Всё в порядке, если |
|---|---|---|
intel_pstate, amd-pstate-epp | energy_performance_preference | default, performance или balance_performance |
acpi-cpufreq, cppc_cpufreq, intel_cpufreq, другие | scaling_governor | performance |
нет каталога cpufreq (обычно виртуальные машины) | проверять нечего | гостевая система не управляет частотой |
Переключение в режим performance
Заголовок раздела «Переключение в режим performance»Tune ставит performance во все scaling_governor и применяет это при каждой загрузке. Для серверов это рекомендуемое решение. То же самое вручную:
cpupower frequency-set -g performanceНа intel_pstate и amd-pstate-epp эта команда заодно ставит energy_performance_preference в performance.
На настольном компьютере или ноутбуке этим параметром обычно управляет среда рабочего стола: power-profiles-daemon (за ним стоит настройка “Power Mode” в GNOME и KDE) или TLP. Профиль Power Saver ставит energy_performance_preference в power, а TLP дополнительно понижает его при работе от батареи. Переключите профиль на performance или balanced:
powerprofilesctl set performanceЗначение energy_performance_preference можно задать и напрямую, не меняя параметр governor:
echo balance_performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preferenceДопустимые значения: default, performance, balance_performance, balance_power и power.
Настройки, сделанные через cpupower или tee, не сохраняются после перезагрузки. Чтобы они стали постоянными, добавьте команду в /etc/rc.local - тогда она выполнится при каждой загрузке. Для параметра governor скрипт Tune уже делает это автоматически.