
Мое ядро 5.11.0-22-generic
автоматически загружает cpufreq
драйвер масштабирования acpi-cpufreq
и регулятор масштабирования schedutil
для моего Ryzen 9 5900X. Я включил настройку ignore_nice_load
после изменения регулятора масштабирования на ondemand
или , conservative
чтобы соответствовать моим потребностям.
Соответственно после изменений все выглядит правильно; cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
возвращает ondemand
или conservative
для всех ЦП и cat /sys/devices/system/cpu/cpufreq/ondemand/ignore_nice_load
возвращает 1.
После изменения частоты масштабирование работает так, как и ожидалось, но нагрузка nice не игнорируется, т. е. процессы BOINC, работающие с niceness 19, вызывают увеличение частоты ЦП. Можете ли вы придумать какой-либо способ игнорировать нагрузку nice с ЦП Ryzen 9?
решение1
Эта проблема исправлена новой версией ядра 5.13.0-21-generic
, которую я получил после обновления до Kubuntu 21.10. Когда ignore_nice_load
установлено 1
значение частота ЦП не масштабируется при запущенном в фоновом режиме BOINC.
Тем не менее фоновая нагрузка оказывает существенное влияние на температуру процессора. В состоянии простоя температура процессора подскакивает от чуть менее 30 градусов Цельсия перед запуском демона BOINC до чуть более 50 градусов Цельсия после запуска демона BOINC.
Установка ignore_nice_load
значения 0
или 1
оказывает видимое влияние на частоту процессора, но не на температуру процессора и, следовательно, на энергопотребление. ignore_nice_load
повышает температуру моего процессора всего на 10 градусов Цельсия, с чуть более 60 градусов Цельсия до чуть более 50 градусов Цельсия.
Мой вывод заключается в том, что управление питанием ЦП значительно улучшилось за эти годы, и мой ЦП никогда не простаивает, а вместо этого экономит энергию, переходя в спящий режим, когда это возможно. Это лишает смысла такой инструмент, как BOINC, который должен использовать циклы ЦП в режиме ожидания.