Регуляторы масштабирования cpufreq «ondemand» и «conservative» не будут игнорировать хорошую нагрузку на процессорах AMD Ryzen

Регуляторы масштабирования cpufreq «ondemand» и «conservative» не будут игнорировать хорошую нагрузку на процессорах AMD Ryzen

Мое ядро 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, который должен использовать циклы ЦП в режиме ожидания.

Связанный контент