LINUX.ORG.RU

Как мониторить буст отдельных ядth CPU с amd_pstate=active?

 , ,


2

2

Здравствуйте, товарищи.

Решил попробовать amd_pstate=active. В теории штука замечательная — процессор сам скейлит свою частоту в зависимости от нагрузки и может моментально перейти с минимальных «оборотов» на максимальные, не дожидаясь команды от ядра.

Но возникла вот такая проблема. Раньше с acpi_cpufreq я мог отслеживать частоту отдельных ядер в /proc/cpuinfo. Но с amd_pstate=active /proc/cpuinfo сообщает, что якобы только одно (нулевое) ядро разгоняется, а все остальные сидят на 550 MHz. Если бы это было так, то производительность в многопроцессных задачах должна была бы существенно просесть, чего не наблюдается.

Есть ли какой-то другой, более достоверный способ отслеживать частоту ядер?

★★★★★

Ответ на: комментарий от devl547

Через turbostat смотрел?

Нет. Даже не знал о его существовании. Судя по найденному ману, он использует msr, что даёт надежду. Но для генты пока нашёл только ебилд девятилетней давности в левом оверлее.

annulen ★★★★★
() автор топика
Ответ на: комментарий от anonymous

turbostat входит в тот же пакет, где cpupower.

Увы(

equery f sys-power/cpupower -f cmd
 * Searching for cpupower in sys-power ...
 * Contents of sys-power/cpupower-5.18:
/usr/bin/cpufreq-bench_plot.sh
/usr/bin/cpupower
/usr/sbin/cpufreq-bench
annulen ★★★★★
() автор топика
Ответ на: комментарий от krasnh

Для меня лично энергоэффективность не особо интересна. Мне главное, чтобы была максимальная производительность на загруженных ядрах, а временно простаивающие не отсвечивали и не мешали работающим буститься.

annulen ★★★★★
() автор топика

Остановился на watch -n2 cpupower monitor — мне кажется, что он более правильно показывает статистику по C1/C2 состояниям, чем ryzen_monitor. Но ryzen_monitor (с патчем) пригодится, если захочу заняться оверклокингом, так как он показывает много дополнительной информации вроде напряжений.

annulen ★★★★★
() автор топика