- C-состояния сохраняют работоспособность в режиме ожидания (чем глубже, тем больше задержка), P-состояния регулируют частоту/напряжение под нагрузкой.
- Оба являются ортогональными: процессор может перейти в режим глубокого сна после работы на высокой частоте.
- Задержки C6/C7 влияют на игры, звук и работу сети; отрегулируйте максимальное значение C-State в зависимости от нагрузки.
- Используйте инструменты (Windows и Linux) и профили BIOS/ОС для измерения и управления без потери стабильности.
В современных процессорах управление питанием осуществляется не одним переключателем, а набором координируемые механизмы (C-состояния и P-состояния ЦП, среди прочих) которые операционная система, прошивка и сам процессор используют для регулирования энергопотребления, температуры и производительности в режиме реального времени. В этой статье разбирается и систематизируется весь этот клубок аббревиатур, чтобы вы могли понять, что происходит внутри, когда ваш компьютер экономит энергию или ускоряется.
Хотя каждый производитель и каждое семейство процессоров вносят свои коррективы, основа остается общей: ACPI определяет стандартные «состояния» для системы, устройств и процессора. Здесь вы узнаете о различиях между C- и P-состояниями, об их связи с G/S/D-состояниями, о том, какое реальное влияние они оказывают на задержку, почему геймеры и профессиональные аудиофилы часто отключают режим глубокого сна, а также о том, какие практичные инструменты доступны для использования в Windows, Linux и таких средах, как ESXi.
ACPI в двух словах
ACPI (Расширенный интерфейс конфигурации и питания) — это стандарт, который управляет питанием ПК и серверов, и который заменил APM с более высоким уровнем контроля и детализации. Он был создан в 90-х годах усилиями Intel, Microsoft и Toshiba и со временем стал включать в себя 64-битную архитектуру, многопроцессорность, современные шины (PCIe, SATA, USB 3.x) и функцию обнаружения событий (например, кнопки питания).
Хотя ACPI в основном используется в семействе x86, он также применяется и в других архитектурах. Однако на мобильных устройствах ARM Используются собственные стратегии (такие как big.LITTLE и гетерогенные кластеры) для балансировки эффективности и реагирования в зависимости от нагрузки.

Глобальные и приостановленные состояния (G-состояния и S-состояния)
Глобальные состояния описывают полное состояние системы. Наиболее важным является G0/S0 (Рабочий), где компьютер активен. На последних моделях оборудования есть S0ix (подсостояния S0) которые позволяют реализовать очень тонкие режимы сна, когда часть SoC находится в спящем режиме, особенно в ноутбуках.
- Г0/С0: система в действии.
- G1 (Спящий): охватывает S1, S2, S3 (приостановка в ОЗУ) и S4 (гибернация на диск). S3 поддерживает питание оперативной памяти для быстрого возобновления работы; S4 сбрасывает память в энергонезависимое хранилище.
- G2/S5 (мягкое выключение): Логическое выключение с минимальным энергопотреблением для возможности пробуждения по событиям (клавиатура, сеть и т. д.).
- G3 (механическое выключение): Физическое отключение; от одной батареи работают только часы реального времени.
Имейте в виду, что C-состояния процессора находятся в пределах G0/S0: Когда система переходит в режим G1, пакет ЦП отключается и C-состояния прекращают воспроизведение.
Состояния устройства (D-состояния)
ACPI также определяет, как периферийные устройства переходят в спящий режим или просыпаются. D0 эквивалентен «полной работе», D1/D2 — промежуточные (зависит от устройства), а D3 разделяется на «Горячий» (с дополнительным питанием, реагирует на шину) или «Холодный» (полностью выключен, не реагирует). Это позволяет, например, сетевой карте выводить компьютер из спящего режима, пока другие устройства остаются в спящем режиме.
T-состояния: модуляция тактовой частоты, последнее средство
В дополнение к P и C, есть еще модуляция тактовой частоты (T-состояния): разновидность ШИМ, которая подавляет внутренние тактовые импульсы в определённом порядке (например, 1 из каждых 8), снижая активность без изменения заявленной базовой частоты. Предназначена для защиты от перегрева или аварийных ситуаций (PROCHOT) и управляется через IA32_CLOCK_MODULATION, причины/журналы которой хранятся в MSR_*_PERF_LIMIT_REASONS.
Хотя в некоторых документах это считается «несущественным», на практике Это продолжает появляться на ноутбуках с хорошей системой охлаждения. и при длительной нагрузке. Если Windows сообщает о «скорости» ниже минимального значения EIST, вероятно, активно состояние T-State (задержка синхронизации).
M-состояния: экономия памяти
ACPI также предоставляет состояния памяти для снижения энергопотребления подсистемы DRAM, когда система находится в режиме ожидания. M0 — нормальная работаРежимы M1/M2 и другие заставляют память самообновляться и замедляют синхронизацию, что снижает энергопотребление и увеличивает задержки пробуждения. Это менее заметно для пользователя, но способствует общей экономии.
C-состояния процессора: сон головой
Теперь перейдём к теме статьи: C-состояния и P-состояния. C-состояния — это состояния простоя ядра или пакета. Чем выше число, тем глубже сон. и большую экономию, но и более высокую задержку пробуждения. Они запрашиваются с помощью привилегированных инструкций, таких как HLT или MWAIT (последняя может явно запрашивать Cx и подстатус), а сопоставление возможностей осуществляется через ACPI (_CST).
- C0: нормальное выполнение. Здесь в игру вступают P-состояния.
- C1/C1E (Остановка): ядро останавливается, почти мгновенный возврат до C0; C1E еще больше снижает потребление.
- C2 (Секундомер): Сигналы часов прекращаются, возврат занимает немного больше времени.
- C3 (Сон/Глубокий сон): L1/L2 сбрасывается в последний кэш (LLC), а тактовая частота ядра отключается; сохраняется только основное состояние ядра.
- C6 и выше: Ядро можно отключить, а его контекст сохранить в выделенной памяти SRAM, снижая напряжение ядра до ~0 В; после выхода состояние ядра восстанавливается. Некоторые модели на современных платформах поддерживают до C10.
В дополнение к C-состояниям на ядро (CC-состояния), существует плоскость C-состояния пакета (PC-состояния) которые отключают общие блоки (например, LLC), когда все ядра это позволяют. Существуют недопустимые комбинации (если ядро находится в C0, пакет не может находиться в PC6), и процессор может автоматически «повышать» или «понижать» уровень в зависимости от целевых задержек и резидентности.
Задержка имеет значение: C1 выводится из эксплуатации всего за несколько десятков циклов, в то время как C6/C7 могут занимать сотни микросекунд. Следовательно, чувствительные к задержкам нагрузки (игры, аудио в реальном времени, ресурсоёмкие сетевые приложения) страдают, если процессор часто переходит в режим глубокого сна.
P-состояния производительности: частота и напряжение
В то время как C-состояния – это «сон, когда нет работы», P-состояния – это «регулировка темпа, когда Да, работа есть, но она не требует максимума.P0 — это состояние наивысшей производительности (максимальная частота/напряжение), затем следуют P1, P2… каждое с убывающей парой частота/напряжение. Эти таблицы объявляются в ОС через ACPI (_PSS) и управляются регистрами MSR, такими как IA32_PERF_CTL/IA32_PERF_STATUS.
Исторически операционная система требовала P-состояний (EIST/SpeedStep на Intel, PowerNow! на AMD), но сегодня это обычное дело Аппаратно-управляемые состояния производительности (HWP/Speed Shift): ОС указывает предпочтение (производительность/экономия), а ЦП определяет точную точку за миллисекунды, с очень высокой степенью детализации по ядрам.
Ключевая деталь: P-состояния и C-состояния «ортогональны»Вы можете находиться в состоянии P0 (высокая частота) и, став неактивным, перейти в состояние C6. И наоборот, при длительной нагрузке в состоянии P2 отсутствуют C-состояния, поскольку ядро находится в состоянии выполнения (C0). Поэтому полезно мысленно разделить «частоту/напряжение» (P) и «холостой ход» (C).
От APM к ACPI: смена парадигмы
APM — это предыдущий API, управляемый преимущественно через BIOS и драйверы. Он позволял Отключите неактивные периферийные устройства и определите простые глобальные состояния, но центральный процессор находился вне прямого управления ОС по соображениям безопасности. ACPI эволюционировал в более сложную и стандартизированную модель с описаниями таблиц, детальным управлением и тесным взаимодействием между прошивкой, ОС и оборудованием.
Как въехать в C-штаты и выехать из них
Когда у планировщика нет готовых потоков, он выполняет HLT или MWAIT с подсказкой целевого C-состояния; Прерывания «ломают» сон и возвращают ядро в состояние C0. Частные кэши очищаются в состоянии C3; контекст сохраняется в SRAM в состоянии C6, а напряжение снижается до нуля. Некоторые процессоры используют маршрутизацию прерываний с учетом энергопотребления (PAIR) для перенаправления прерываний в уже активные ядра (для сохранения) или для бездействующих ядер (для производительности), по мере необходимости.
Turbo, TDP и ограничения мощности
Процессоры определяют TDP, который система охлаждения должна рассеивать на постоянной основе (PL1: безопасная средняя мощность). Выше могут быть установлены более мощные стеклоподъемники (PL2и дополнительные уровни, такие как PL3/PL4 (в зависимости от платформы) в течение ограниченного времени. При наличии теплового и электрического запаса ядро может превысить базовую частоту в режиме Turbo, даже асимметричная форма (больше турбо при меньшем количестве активных ядер).
Когда температура превышает пороговое значение или VRM/мощность требуют этого, PROCHOT может быть активирован и перейти в состояние T или ограничение частоты для защиты чипа. Такое поведение часто встречается в тонких ноутбуках.
Windows: схемы электропитания, показания и счетчики
Предложения Windows планы типа «Энергосбережение», «Сбалансированный» и «Высокопроизводительный». Первый вариант имеет тенденцию агрессивно снижайте P-состояния и спите спокойноТретий вариант поддерживает высокие частоты и избегает снижения задержки в ущерб эффективности. «Сбалансированный» вариант пытается найти золотую середину.
В диспетчере задач «скорость» — это синтетическая метрика, которая усредняет на ядро и учитывает коэффициент модуляции при наличии T-состояний. Может превышать базовый уровень (Turbo) или опускаться ниже минимального значения EIST (стробирование). Для расширенной телеметрии счётчик «\Processor Information(_Total)\% Processor Performance» отражает процент эффективной производительности процессора.
Существуют утилиты для диагностики или настройки: CPU‑Z (исходные данные), HWiNFO (датчики), Дроссельная заслонка (тактовые частоты, C-состояния на ядро и управление PROCHOT/модуляцией), или ParkControl (настройка парковки ядра/C-состояния), которые затрагивают скрытые параметры плана электропитания (powercfg позволяет редактировать «IDLE_PROMOTE/DEMOTE» и т. д.).
Linux: cpupower, turbostat и CoreFreq
В Linux такие инструменты, как мощность процессора показать регуляторы, диапазоны частот и задержки перехода; турбостат отображает MSR, основные причины ограничения производительности (MSR_CORE_PERF_LIMIT_REASONS) и резидентуры по C-State; а также CoreFreq обеспечивает детальное представление абсолютных частот, C-состояний и Turbo для каждого ядра/пакета.
Практический нюанс: на некоторых компьютерах драйвер intel_idle может игнорировать ограничения BIOS В других случаях прошивка «блокирует» максимальное C-состояние, разрешённое ОС, через MSR.
BIOS/UEFI и профили: кто на самом деле главный?
В настройках BIOS/UEFI они обычно появляются ключевые переключатели: EIST/SpeedStep, TurboBoost и C-состояния ЦПКроме того, многие серверы позволяют выбирать профили питания: «Максимальная производительность» (максимальная производительность с минимальными задержками) или «Управляемый ОС/Настраиваемый», где гипервизор или ОС управляет состояниями ПК/ПК. Выбор «Режима управления ОС» делегирует интеллектуальные функции операционной системе.
Если вы используете гипервизоры типа ESXi, хорошей идеей будет объединить Режим управления ОС в BIOS с планом «Высокая производительность» гипервизора, когда целью является снижение производительности (например, с помощью NSX-T, периферийных узлов или функций, чувствительных к задержке). В этом сценарии вы будете чаще видеть P-состояние 0, а C-состояния будут ограничены C0/C1; при «Сбалансированном» плане хост будет больше полагаться на более низкие P-состояния и более глубокие C-состояния.
Подведем итог всей этой неразберихе с C-состояниями и P-состояниями: ACPI определяет фрейм, C-состояния экономят энергию, когда нет работы, P-состояния регулируют высокую/низкую передачу под нагрузкой, T-состояния спасают положение в экстремальную жару, а M-состояния экономят ватты на памяти. Главное — выбрать правильный профиль для вашего использования., выполните измерения с помощью правильных инструментов и, при необходимости, установите разумные ограничения на глубину покоя.
Редактор, специализирующийся на вопросах технологий и Интернета, с более чем десятилетним опытом работы в различных цифровых медиа. Я работал редактором и создателем контента в компаниях, занимающихся электронной коммерцией, коммуникациями, онлайн-маркетингом и рекламой. Я также писал на сайтах по экономике, финансам и другим секторам. Моя работа – это также моя страсть. Теперь, благодаря моим статьям в Tecnobits, я стараюсь каждый день изучать все новости и новые возможности, которые предлагает нам мир технологий, чтобы улучшить нашу жизнь.


