Каково значение столбцов в таблице, отображаемой cpupower-monitor?

Вопрос или проблема

Запуская sudo cpupower monitor на Ubuntu 24.04, я получаю:

    | Nehalem                   || Mperf              || RAPL               || Idle_Stats
 CPU| C3   | C6   | PC3  | PC6   || C0   | Cx   | Freq  || pack | core | unco  || POLL | C1_A | C2_A | C3_A
   0|  0.00|  0.46|  0.00|  0.00|| 11.71| 88.29|  3060||37496059|27532217| 73852||  0.01|  8.94| 79.93|  0.00
   1|  0.00|  0.46|  0.00|  0.00||  6.56| 93.44|  2790||37496059|27532217| 73852||  0.00|  2.56| 53.19| 37.97
   2|  0.00|  4.67|  0.00|  0.00||  9.14| 90.86|  3194||37496059|27532217| 73852||  0.01|  4.43| 58.09| 28.77
   3|  0.00|  4.67|  0.00|  0.00||  6.24| 93.76|  3239||37496059|27532217| 73852||  0.00|  1.69| 34.62| 57.66
   4|  0.00|  0.00|  0.00|  0.00||  0.29| 99.71|  4461||37496059|27532217| 73852||  0.00|  0.00|  0.00| 99.97
   5|  0.00|  0.00|  0.00|  0.00|| 29.52| 70.48|  4457||37496059|27532217| 73852||  0.00| 64.48|  0.00|  6.48
   6|  0.00|  0.00|  0.00|  0.00|| 47.92| 52.08|  4123||37496059|27532217| 73852||  0.00|  0.95|  0.31| 51.40
   7|  0.00|  0.00|  0.00|  0.00||  0.00|100.00|  3753||37496059|27532217| 73852||  0.00|  0.00|  0.00| 99.99
   8|  0.00| 25.03|  0.00|  0.00||  3.27| 96.73|  2807||37496059|27532217| 73852||  0.01|  4.13| 54.72| 38.03
   9|  0.00| 62.12|  0.00|  0.00||  2.32| 97.68|  2897||37496059|27532217| 73852||  0.00|  1.29| 30.79| 65.69
  10|  0.00| 77.85|  0.00|  0.00||  2.19| 97.81|  3064||37496059|27532217| 73852||  0.00|  0.94| 18.42| 78.51
  11|  0.00|  0.00|  0.00|  0.00|| 14.84| 85.16|  2497||37496059|27532217| 73852||  0.01| 57.88| 27.45|  0.38
  12|  0.00| 70.55|  0.00|  0.00||  3.27| 96.73|  2399||37496059|27532217| 73852||  0.00|  1.33| 30.14| 65.41
  13|  0.00| 54.45|  0.00|  0.00||  4.02| 95.98|  2213||37496059|27532217| 73852||  0.00|  1.06| 43.49| 51.62
  14|  0.00| 67.90|  0.00|  0.00||  3.36| 96.64|  2334||37496059|27532217| 73852||  0.00|  1.34| 30.91| 64.54
  15|  0.00| 72.39|  0.00|  0.00||  2.41| 97.59|  2167||37496059|27532217| 73852||  0.00|  1.25| 26.74| 69.73

Каково значение столбцов в этой таблице? Руководство cpupower (https://linux.die.net/man/1/cpupower-monitor) не содержит этой информации. Я предполагаю, что C3, C6 и т.д. — это проценты времени, проведенного в данном состоянии C процессора.

Также я запускаю программу с двумя потоками, закрепленными за процессорами #5 и #6. Ядра #2 и #3, содержащие гипертрединговые процессоры 4-7, изолированы с помощью GRUB_CMDLINE_LINUX="nohz=on nohz_full=4-7 rcu_nocbs=4-7 isolcpus=4-7 irqaffinity=0-3,8-15". Таблица выше подтверждает нагрузку на процессоры #5 и #6, но также постоянно показывает небольшую нагрузку на процессор #4. Это не соответствует экрану Монитора системы Ubuntu, который постоянно показывает 0% нагрузки на процессор #4, указанный здесь как #5:

введите описание изображения здесь

Кроме того, почему логические процессоры на одном физическом ядре показывают разные частоты?

Ответ или решение

Объяснение колонок в таблице cpupower-monitor

Запуск команды sudo cpupower monitor в Ubuntu 24.04 предоставляет пользователю информацию о состоянии процессора и его энергопотреблении. В таблице выводятся несколько колонок, каждая из которых содержит важные показатели, которые стоит детально обсудить.

1. Статусы процессоров и C-состояния

  • CPU: Начинается с номера процессора, начиная с нуля и заканчивая максимальным номером логического ядра.
  • C3, C6, PC3, PC6: Эти колонки показывают процент времени, проведенного CPU в различных C-состояниях:
    • C3: Энергосберегающее состояние, в котором процессор может снизить свое потребление; основное состояние ожидания с низким энергопотреблением.
    • C6: Более глубокое состояние по сравнению с C3, где тактовая частота ещё больше снижается.
    • PC3 и PC6: Эти колонки представляют собой специально обработанные состояния, которые используют другие механизмы управления энергопотреблением. Например, они могут быть связаны с архитектурой процессора и его функционалами.

2. Энергетические состояния

  • Mperf: Это значение указывает на производительность процессора в различных состояниях. Обычно его значение повышается по мере увеличения нагрузки.
  • RAPL (Running Average Power Limit): Показатель, позволяющий отслеживать среднее потребление энергии процессора, снова понятая через его C-состояния.

3. Частота и нагрузка

  • Idle_Stats: Это обозначение состояния простоя, в которое входит процессор в моменты низкой активности. Он имеет несколько колонок:
    • C0: В этом состоянии CPU активно работает.
    • Cx: Общее время в C-состояниях, где x может указывать на любое из состояний (например, C1, C2 и т.д.).
    • Freq: Текущая частота процессора в мегагерцах. Это важно для понимания, как CPU адаптируется к нагрузке.

4. Разделение по ядрам

Колонки pack, core, unco и POLL, C1_A, C2_A, C3_A также дают профессионалы больше информации о ресурсах, использованных на каждом Ядре:

  • pack: Статистика о состоянии пакетов, объединяющих физические ядра.
  • core: Отображает нагрузку на каждое логическое ядро.
  • unco: Информация об нераспределенных колл-пакетах.
  • POLL, C1_A, C2_A, C3_A: Эти колонки указывают на период, проведенный в различных состояниях ожидания, отражая как активные, так и простые состояния процессора.

5. Объяснение различий в частоте

Что касается вопроса о различии в частотах логических CPU на одном физическом ядре, это может быть связано с тем, как процессор управляет энергетическими ресурсами. Частота процессора может изменяться в зависимости от текущих задач и загрузки, поэтому разные логические процессоры могут показывать разные частоты даже на одном физическом ядре. Эта аномалия должна быть рассмотрена в контексте циклов работы инфраструктуры и ее управления перегрузкой.

Заключение

Таким образом, вывод, который можно сделать из анализа столбцов таблицы cpupower-monitor, демонстрирует глубокую связь между состояниями активности процессора и его энергоэффективностью. Благодаря этому, администраторы систем могут более точно управлять нагрузкой и оптимизировать энергопотребление на серверных и рабочие станциях, особенно в условиях многопоточности и изоляции ядер.

Оцените материал
Добавить комментарий

Капча загружается...