К основному контенту

Кроссовер BMW X5 – обновления меняющие имидж

Управление частотой процессора в Windows 10

Большинство современных процессоров используют различные технологии энергосбережения, такие как Intel SpeedStep или AMD Cool'n'Quiet. Эти технологии основаны на динамическом изменении частоты работы процессора в зависимости от нагрузки с целью снижения энергопотребление и тепловыделения.

Для понимания рассмотрим общие принципы работы данных технологий.

У процессора есть состояния производительности (P-States), которые представляют из себя комбинацию множителя частоты (Frequency ID, FID) и напряжения питания (Voltage ID, VID). Тактовая частота работы процессора получается путем умножения частоты системной шины (FSB) на FID, соответственно чем больше множитель, тем выше частота, и наоборот. Количество поддерживаемых состояний зависит от характеристик процессора (макс. частота, множитель и т.п.).

В ходе первоначальной загрузки в BIOS создается описание возможных состояний производительности. Это описание в соответствии с интерфейсом ACPI считывается операционной системой при запуске. В процессе работы операционная система отслеживает загрузку процессора, при снижении нагрузки обращается к драйверу процессора и переводит процессор в пониженное состояние. Снизив частоту и напряжение, процессор будет потреблять меньше энергии и, соответственно, меньше нагреваться. Ну а при увеличении нагрузки операционная система опять запросит изменение состояния процессора, но уже в большую сторону.

Когда и в какое из состояний переводить процессор, операционная система решает автоматически, в соответствии с текущей политикой энергосбережения. Но, кроме этого, в Windows есть возможность вручную задать диапазон регулировки, ограничив минимальное и максимальное состояние.

В моем компьютере стоит Intel Core I7 4790К. Согласно спецификации, он имеет базовую частоту 4ГГц, а с использованием технологии Turbo Boost может разгоняться до максимальных 4.4ГГц. Для того, чтобы посмотреть текущую скорость работы процессора, запустим «Диспетчер задач» (Ctrl+Shift+Esc) и перейдем на вкладку «Производительность». Как видите, на данный момент нагрузка невелика и процессор работает вполсилы, частота его работы составляет 1.84ГГц.


Вкладка Производительность в Диспетчере задач

Попробуем немного покрутить настройки частоты процессора и посмотрим, что из этого получится. Для запуска оснастки управления электропитанием жмем клавиши Win+R и выполняем команду powercfg.cpl.


запуск оснастки управления электропитанием

В открывшемся окне выбираем текущую схему электропитания, переходим по ссылке «Настройка схемы электропитания»


оснастка управления электропитанием

и жмем на ссылку «Изменить дополнительные параметры питания».


переход к дополнительным настройкам электропитания

За частоту работы процессора отвечают параметры «Минимальное состояние процессора» и «Максимальное состояние процессора», находящиеся в разделе «Управление питанием процессора».


дополнительные настройки электропитания

Обратите внимание, что у ноутбуков для каждого параметр доступны два варианта настроек. Первый отвечает за частоту процессора при автономной работе (от батареи), второй — при работе от сети.


дополнительные настройки электропитания для ноутбука

Проверим, как влияет изменение настроек на частоту работы процессора. Для начала уменьшим максимальное состояние до 20% и проверим результат. Как видите, частота работы снизилась до примерно 0.78ГГц, что как раз составляет примерно 20% от базовой частоты.


изменение максимальной частоты процессора до 20%

Что интересно, снизить частоту ниже 20% мне это не удалось. При выставлении значения ниже 20% частота продолжает оставаться на том же уровне, т.е. для моего процессора 800МГц является минимальной поддерживаемой частотой.


изменение максимальной частоты процессора до 5%

Чтобы разобраться, почему так, запустим диагностическую утилиту CPU-Z. Как видите, в нашем случае частота шины составляет 100МГц, а множитель изменяется в диапазоне от 8 до 44. Отсюда и получаем возможность изменения частоты от минимальных 800МГц до максимума 4.4ГГц с шагом в 100МГц.


CPU-Z

Но переключение осуществляется не по каждому множителю, а более дискретно. Другими словами, количество состояний производительности не соответствует количеству значений множителя. Посмотреть все доступные состояния можно утилитой RightMark Power Management. Например для испытуемого процессора доступно всего 15 состояний, а переключения между ними происходят с переменным шагом 200-300МГц.


RightMark PPM

Ну а на что влияет минимальная частота процессора? Для проверки установим значение минимальной частоты в 100% и убедимся, что скорость работы процессора сразу поднялась почти до максимуму и достигла 4.3ГГц. И это при том, что загрузка процессора составила всего 14%.


изменение минимальной частоты процессора до 100%

Есть еще одна настройка, отвечающая за частоту работы процессора. По умолчанию она скрыта и для того, чтобы увидеть ее, необходимо произвести некоторые манипуляции в реестре. Поэтому открываем редактор реестра (Win+R ->regedit), переходим в раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\75b0ae3f-bce0-45a7-8c89-c9611c25e100, находим параметр Attributes и изменяем его значение на 2.


добавление настройки частоты процессора в реестре

После этого в окне настроек появится параметр «Максимальная частота процессора». Как следует из названия, этот параметр отвечает за ограничение максимальной частоты работы процессора, его значение задается в мегагерцах. По умолчанию значение параметра равно 0, что означает отсутствие ограничений.


пункт настройки частоты процессора

Установим ограничение в 1500МГц и проверим результат. И действительно, ограничение работает и частота не поднимается выше указанного значения.