Данная заметка касается владельцев ноутбуков на базе APU AMD поколений Zen 3/4/5 без дискретной видеокарты. Применима ли она к другим - я проверить не могу.Итак, по пунктам:
1. Уменьшение потребления энергии в idle режиме1.1 Качаем, собираем и устанавливаем утилиту [[https://github.com/FlyGoat/RyzenAdjт RyzenAdj]]. Возможно она есть в вашем дистрибутиве из коробки - проверьте сами.
1.2 Добавляем в автозапуск системы (rc.local/systemd unit - как вам нравится) следующую команду:
ryzenadj --power-saving
1.3 Возможно (по крайней мере это касается ноутбуков на основе Zen 4), эту команду нужно запускать после каждого цикла suspend resume и при отключении подключении питания, ибо EC материнской платы сбрасывает состояние энергосбережения в обоих случаях.
Данная команда очень немного уменьшает производительность, но вы это не заметите. На моём HP ноутбуке с Ryzen 7 7840HS энергопотребление в режиме ничего не делания после использования команды падает с ~3.5W до 0.7W.
2. Уменьшение потребления энергии на задачи которые не требуют максимальной производительности процессора.
К сожалению, новомодный amd-pstate совершенно невменяем касаемо частот, которые он выставляет для задач, которые не требуют максимальной производительности процессора.
Например, просмотр видео с использование аппаратного ускорения заставляет процессор висеть примерно на частоте близкой к максимальной, при этом потребление энергии составляет примерно 15 ватт.
Чтобы избежать этого, нужно выполнить следующую команду:
echo balance_performance | sudo tee /sys/devices/system/cpu/cpufreq/*/energy_performance_preference
При её использовании частота падает примерно вдвое, потребление энергии уменьшается примерно до 7W.
Её так же можно добавить в автозапуск системы.
3. Уменьшение максимального энергопотребления и температуры APU.
Команда ryzenadj имеет и другие опции:
--tctl-temp=XX - установка максимальной температуры. Если вы хотите увеличить срок службы термопасты и вентилятора, советую уменьшить её. Для себя я выставил значение 80.
--stapm-limit=XXXXX - максимальное потребление энергии в тысячах, т.е. для 20W, вы делаете 20000. Если у вас, например, APU с 54W, можно сделать его гораздо тише выставив значение в 31W.
--fast-limit=XXXXX - максимальное пиковое **кратковременное** потребление энергии в тысячах.
--slow-limit=XXXXX - максимальное пиковое **долговременное** потребление энергии в тысячах.
Во время автономной работы, я запускаю следующую команду:
ryzenadj --tctl-temp=70 --power-saving --stapm-limit=15000 --fast-limit=15000 --slow-limit=10000
К слову сказать, RyzenAdj работает и в Windows.
Источник: Artem S. Tashkinov (birdie). Если будут вопросы, оставляете их здесь.
URL:
Обсуждается: http://www.opennet.me/tips/info/3259.shtml
Помню amd pstate работал очень странно, но 6.6 поправили.
Юзаю:
CONFIG_X86_AMD_PSTATE=y
CONFIG_X86_AMD_PSTATE_DEFAULT_MODE=4
+
echo ondemand | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
cpupower frequency-set -u 2000MHz# cpupower frequency-info
analyzing CPU 8:
driver: amd-pstate
CPUs which run at the same hardware frequency: 8
CPUs which need to have their frequency coordinated by software: 8
maximum transition latency: 20.0 us
hardware limits: 400 MHz - 4.46 GHz
available cpufreq governors: ondemand powersave performance schedutil
current policy: frequency should be within 400 MHz and 2.00 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 400 MHz (asserted by call to kernel)
Если бы AMD не извращались и использовали ACPI, то такие извраты бы не потребовались.
А для до-ryzen что-нибудь аналогичное есть, интересно? А то под Линуксом вентилятор просто не останавливается. :_(
Tell the kernel to report a version of Windows
Привет.Подскажите, пожалуйста, как корректно запускать сабж на hp 14s?
Если я правильно понимаю, нужно узнать и отталкиваться от мин/макс значений скорости прокрутки вентилятора, мощности процессора, ?
Или есть безопасный способ запуска?
Как проверить своими руками проблемы, укзанные в статье?
А не делает ли то же самое штатная настройка GNOME?
https://ibb.co/1q7H18cПоскольку в режиме экономии энергии мой ноутбук раза в три увеличивает длительность работы.
Сделал всё это. Ноут стал жрать на полватта больше.Ryzen 7 7840HS.
Камрады, а чего tlp использовать уже не модно?
Мой Thinkpad на Ryzen 7 в штатном режиме использования (youtube + сёрфинг + офисные задачи) вообще не включает вентиляторы.
> Мой Thinkpad
> на Ryzen 7вы или рясу снимите или трусы наденьте.
лол, во-первых вот это "ryzenadj --power-saving" замедляет ноут очень сильно (в моём zen3 первые 10 секунд нагрузки частота не бустится с этим, только с 11 начинает), да и задержки любых действий здорово растут, во-вторых это ещё и включено из коробки, когда зарядка отключена (если работаете с ноутом, батарея которого заряжается, её скорее всего уже можно выбросить 🤷♂️)
> --stapm-limit=15000 --fast-limit=15000 --slow-limit=10000Values above slow limit or fast limit would not make sense. Fast Limit > Slow Limit > STAPM Limit