Регулирование частоты CPU в линукс

Рейтинг: 1Ответов: 1Опубликовано: 12.04.2023

Имеется manjaro kde на ядре 6.1.23 на ноутбуке с процессором ryzen 6800h (Redmibook 2022). В чем заключается проблема: С помощью утилиты cpupower на ядре 6.0 я могу устанавливать любую частоту процессора, что помогает сэкономить заряд (проверял с помощью powertop). На ядре 6.1, минимальная частота, что я могу выставить, это 1.6Ггц, и переключается она шагами: 1.6, 1.8, 3.2. Когда на предыдущем ядре я могу выставить любую частоту в пределе от 0,4Ггц до 4,8Ггц.

Вывод sudo cpupower frequency-info:

analyzing CPU 11:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 11
  CPUs which need to have their frequency coordinated by software: 11
  maximum transition latency:  Cannot determine or is not supported.
  hardware limits: 1.60 GHz - 4.78 GHz
  available frequency steps:  3.20 GHz, 1.80 GHz, 1.60 GHz
  available cpufreq governors: conservative ondemand userspace powersave performance schedutil
  current policy: frequency should be within 1.60 GHz and 3.20 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency: 1.60 GHz (asserted by call to hardware)
  boost state support:
    Supported: yes
    Active: yes
    Boost States: 0
    Total States: 3
    Pstate-P0:  3200MHz
    Pstate-P1:  1800MHz
    Pstate-P2:  1600MHz

На ядре 6.0 вывод аналогичен, только 6-я строка с пределами выглядит по другому:

hardware limits: 400 MHz - 4.78 GHz

С чем это связано и как починить? Часто приходится работать без питания и время работы от аккумулятора очень важно. Тем более, что частоты 1Ггц на 16 потоках хватает, чтоб без фризов работать в офисном пакете и на фоне смотреть ютуб. Заранее спасибо за помощь.

Ответы

▲ 3Принят

Помогло добавление аргументов в файл /etc/default/grub, в строку GRUB_CMDLINE_LINUX_DEFAULT:

GRUB_CMDLINE_LINUX_DEFAULT="<старые параметры> amd_pstate.enable=1 amd_pstate.shared_mem=1 amd_pstate=passive initcall_blacklist=acpi_cpufreq_ini"

Затем

sudo update-grub

Большое спасибо всем за помощь.