Утилиты для снижения энергопотребления ноутбука

Сергей Пахомов

Энергопотребление ноутбука

Технология Enhanced Intel SpeedStep

Настройка схем энергопотребления средствами Windows XP

Тонкая настройка энергопотребления процессора с помощью утилиты RMClock

Настройка энергопотребления процессора с помощью утилиты CPUMSR v.0.9

 

Длительность автономной работы от аккумуляторной батареи — одна из наиболее важных характеристик современного ноутбука, определяющая его функциональность и мобильность. Однако далеко не все пользователи знают, как правильно настроить ноутбук, чтобы увеличить время его автономной работы без ущерба для производительности. Кроме возможностей по настройке ноутбука средствами операционной системы, существуют также программные средства, позволяющие добиться максимального снижения энергопотребления. В этой статье мы рассмотрим возможности операционной системы по настройке ноутбука, а также расскажем об утилитах, позволяющих произвести прецизионную настройку режимов энергопотребления процессора.

Энергопотребление ноутбука

Как известно, продолжительность автономной работы ноутбука от аккумуляторных батарей зависит от потребляемой ноутбуком мощности и емкости его батареи, причем:

 

Потребляемая ноутбуком мощность зависит от энергопотребления всех его подсистем. Основными потребителями мощности в ноутбуке являются ЖК-матрица, процессор, чипсет и блок питания. Остальные компоненты ноутбука также потребляют мощность, но несколько меньше. Понятно, что основная задача разработчиков заключается в уменьшении энергопотребления ноутбуков при сохранении их производительности и функциональности.

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

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

Прежде чем подробно рассмотреть технологии энергосбережения, отметим, что энергопотребление процессора пропорционально его тактовой частоте и квадрату напряжения питания, то есть: P ~ FU2.

Кроме того, между тактовой частотой процессора и напряжением питания существует линейная зависимость: P ~ FU.

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

В процессорах Intel для уменьшения среднего энергопотребления процессора используется технология Enhanced Intel SpeedStep.

Технология Enhanced Intel SpeedStep

Улучшенная технология SpeedStep (Enhanced Intel SpeedStep) дает возможность снизить энергопотребление процессора за счет динамического изменения напряжения ядра процессора и его тактовой частоты. Изменение тактовой частоты процессора происходит благодаря изменению коэффициента умножения процессора, поэтому оно возможно только ступенчатым образом, причем минимальное изменение тактовой частоты соответствует частоте системной шины. Условия работы процессора меняются в зависимости от его загрузки (степени утилизации), от температурного режима, а также от установленных пользователем предпочтений через задание схемы энергопотребления (Power Schemes) в настройках операционной системы.

Технология Enhanced Intel SpeedStep предусматривает использование нескольких возможных значений напряжения питания и частоты (в совокупности — рабочих точек или состояний производительности (Performance State, P-State)), что позволяет достичь эффективного режима функционирования, когда производительность согласуется с рабочей нагрузкой. Для каждого процессора существует своя таблица соответствия частоты и напряжения (таблица P-State).

Управление переходами между рабочими точками выполняется только самим процессором и блоком регулятора напряжения (VRM). Для установки требуемого напряжения процессор посылает служебные VID-последовательности непосредственно в VRM-модуль. При этом никакие другие компоненты системы при осуществлении перехода между рабочими состояниями процессора не применяются.

Переход между рабочими точками процессора, характеризующимися напряжением и частотой, происходит таким образом, чтобы обеспечить работоспособность процессора на протяжении этого перехода, который не может осуществляться мгновенно. Для того чтобы выполнить переход на более высокую тактовую частоту, сначала до требуемого уровня меняется напряжение процессора. На процесс изменения напряжения уходит порядка 100 мкс, то есть он является довольно длительным. Чтобы сохранить работоспособность процессора при изменении напряжения, частота процессора не меняется. Когда же напряжение изменится и достигнет требуемого уровня, происходит скачкообразное увеличение частоты процессора, которое длится порядка 10 мкс. Если требуется осуществить переход к меньшей частоте, сначала происходит практически мгновенное изменение частоты (в течение 10 мкс), а после этого уже при неизменной частоте постепенно уменьшается напряжение самого процессора.

Всего в технологии Enhanced Intel SpeedStep рассматриваются четыре схемы энергопотребления:

  • Maximum Performance Mode;
  • Battery-Optimized Performance Mode;
  • Automatic Mode;
  • Maximum Battery Mode.

Схема Maximum Performance Mode — это режим работы ноутбука по умолчанию в случае питания от сети (от внешнего источника питания). В данном режиме процессор работает на максимальной тактовой частоте, что обеспечивает максимальную производительность.

Battery-Optimized Performance Mode — это режим работы ноутбука, устанавливаемый программным способом средствами операционной системы (Windows XP/Me/2000) через настройки схемы энергопотребления (Power Schemes). В данном режиме тактовая частота и напряжение процессора динамически изменяются в зависимости от загрузки процессора, что позволяет существенно снизить энергопотребление (и соответственно увеличить время автономной работы от батареи) по сравнению с режимом работы процессора на номинальной тактовой частоте.

Схема Automatic Mode — режим автономной работы ноутбука от аккумуляторной батареи по умолчанию. В данном режиме при питании от сети процессор работает в режиме Maximum Performance Mode, а при работе от аккумуляторной батареи — в режиме Battery-Optimized Performance Mode.

Ну и последний возможный режим работы — это Maximum Battery Mode. Так же как и режим Battery-Optimized Performance Mode, он устанавливается программным способом. При его выборе тактовая частота и напряжение процессора понижаются до минимального значения, что позволяет значительно снизить энергопотребление. Существенно, что в данном режиме процессор работает на пониженной тактовой частоте при любой степени загрузки. В результате за счет снижения производительности достигается максимально возможное время автономной работы от аккумуляторной батареи. Данный режим предназначен для тех случаев, когда пользователям наиболее критично именно время автономной работы от батареи, даже в ущерб производительности ноутбука.

Автоматическое переключение между этими схемами энергопотребления (например, при отключении внешнего питания) происходит незаметно для пользователя, так как для этого требуется менее 1/1000 доли секунды. Естественно, что сам процесс переключения не нарушает режима работы всех запущенных приложений.

Рассмотрим технологию Enhanced Intel SpeedStep более подробно на примере мобильного процессора Intel Pentium M 1,6 ГГц. Для данного процессора есть шесть различных рабочих точек (табл. 1).

 

Таблица 1. Таблица соответствия значений частоты и напряжения для процессора Intel Pentium M 1,6 ГГц

В состоянии P0, то есть при работе процессора на частоте 1,6 ГГц при напряжении 1,484 В, его энергопотребление составляет 24,5 Вт. В состоянии P5, то есть при работе процессора на частоте 600 МГц при напряжении 0,959 В, его энергопотребление составляет всего 6 Вт, то есть в четыре раза меньше. На рис. 1 показано энергопотребление процессора Intel Pentium M 1,6 ГГц в разных рабочих точках.

 

Рис. 1. Энергопотребления процессора в разных рабочих точках

Понятно, что если процессор переходит в режим Battery-Optimized Performance Mode, то его среднее энергопотребление будет меньше 24,5 Вт, поскольку часть времени (если, конечно, речь не идет о задачах, когда процессор утилизирован на 100%) процессор будет малоактивен и перейдет в состояние P5 с низким энергопотреблением.

Настройка схем энергопотребления средствами Windows XP

Если процессор поддерживает технологию Enhanced Intel SpeedStep, то, возможно, ее необходимо активировать в настройках BIOS. Как правило, данная технология активирована по умолчанию, а многие современные модели ноутбуков не позволяют отключить ее через настройки BIOS. Однако активирования данной технологии еще недостаточно для установления нужного режима энергопотребления.

В операционной системе Windows XP для установки требуемого режима работы процессора предусмотрена возможность настройки схемы питания (Power Schemes) в диалоговом окне Power Options (рис. 2).

 

Рис. 2. Выбор требуемой схемы энергопотребления в операционной системе Windows XP

Всего в операционной системе Windows XP предусмотрено шесть схем питания:

  • Home/Office Desk;
  • Portable/Laptop;
  • Presentation;
  • Always On;
  • Minimal Power Management;
  • Max Battery.

Данные схемы (по умолчанию) отличаются друг от друга временем (которое можно настраивать) до отключения монитора, жестких дисков и перехода в состояния Standby при неактивности системы, а также, что значительно важнее, режимами энергопотребления процессора, предусмотренными технологией Enhanced Intel SpeedStep.

Напомним, что в технологии Enhanced Intel SpeedStep реализованы четыре схемы энергопотребления: Maximum Performance Mode, Automatic Mode, Battery-Optimized Performance Mode и Maximum Battery Mode, однако, учитывая, что схема Automatic Mode сводится к схемам Maximum Performance Mode (при питании от сети) и Battery-Optimized Performance Mode (при питании от батареи), можно считать, что существуют три базовых схемы энергопотребления процессора. Таким образом, в конечном счете шесть схем питания, предусмотренных в операционной системе Windows XP, сводятся к трем базовым схемам энергопотребления, определяемым технологией Enhanced Intel SpeedStep. Соответствие между схемами питания Windows XP и режимами работы процессора показано в табл. 2.

 

Таблица 2. Соответствие между схемами питания Windows XP и режимами работы процессора

В случае схемы Always On при питании ноутбука и от электросети, и от батареи процессор всегда работает на максимальной тактовой частоте и максимальном напряжении, то есть находится в состоянии P0. Данный режим можно рекомендовать только в том случае, если ноутбук работает от электросети, поскольку при автономной работе, то есть при питании от аккумуляторной батареи, не реализуется динамическое переключение тактовой частоты и напряжения, что сокращает время автономной работы.

Схема Home/Office Desk является наиболее целесообразной для ноутбука. При выборе данной схемы при питании ноутбука от электросети процессор работает на максимальной тактовой частоте и при максимальном напряжении, а при переходе к питанию от аккумуляторной батареи задействуется технология Enhanced Intel SpeedStep, что позволяет увеличить время автономной работы без ощутимой потери производительности.

Схема Portable/Laptop отличается от схемы Home/Office Desk тем, что в ней технология Enhanced Intel SpeedStep используется и при питании ноутбука от электросети. Данную схему питания можно рекомендовать в том случае, когда ноутбук нагревается в процессе работы и часто включает вентилятор процессора.

Схема Minimal Power Management ничем не отличается от схемы Portable/Laptop, однако в этих схемах можно по-разному настроить время отключения монитора, жестких дисков и перехода к режиму Standby.

В схемах Presentation и Max Battery при питании ноутбука от электросети реализуется режим энергопотребления Battery-Optimized Performance Mode, то есть задействуется динамическое переключение частоты и напряжения. При питании ноутбука от аккумуляторной батареи в данной схеме применяется режим Maximum Battery Mode, когда процессор работает при минимальном напряжении и минимальной тактовой частоте, предусмотренной его возможными состояниями. Разумеется, данную схему энергопотребления нужно выбирать в том случае, когда требуется обеспечить максимальное время работы ноутбука от аккумуляторной батареи — даже в ущерб его производительности.

Тонкая настройка энергопотребления процессора с помощью утилиты RMClock

Возможности по настройке ноутбуков с помощью выбора схемы питания достаточно эффективны, однако средствами операционной системы невозможно произвести прецизионную настройку самой технологии Enhanced Intel SpeedStep, то есть операционная система не позволяет определить рабочие точки процессора (задать соответствие между тактовой частотой процессора и напряжением питания). В то же время рабочие точки процессора могут оказаться далеко не оптимальными для него. Ситуация в данном случае такая же, как при разгоне процессора. Номинальная тактовая частота процессора может оказаться заниженной для конкретной модели, и ничто не мешает пользователю увеличить ее без ущерба для стабильности работы. Аналогично и рабочие точки процессора, определяемые для технологией Enhanced Intel SpeedStep, могут оказаться неоптимальными для конкретного процессора, так что можно попытаться скорректировать таблицу соответствия тактовой частоты и напряжения для всех рабочих точек (P-State). В данном случае речь идет о том, чтобы попытаться уменьшить напряжение, соответствующее тактовой частоте в каждой рабочей точке.

Для решения этой задачи можно использовать утилиту RMClock (RightMark CPU Clock/Power Utility), написанную российским программистом Дмитрием Бесединым.

Отметим, что утилита RMClock (http://cpu.rightmark.org) предназначена для контроля частоты, троттлинга и уровня загрузки процессора в реальном времени, а корректировка таблицы P-State — это побочная функция утилиты.

В дальнейшем мы рассмотрим возможности утилиты RMClock на примере версии 2.05. С ее помощью мы настроим ноутбук на основе мобильного процессора Intel Pentium M 1,6 ГГц (Dothan).

Интерфейс утилиты весьма прост и содержит четыре основных окна: General, Monitoring, Management and Profiles и Advanced CPU Settings.

В окне General (Общее) (рис. 3) отображается общая информация о процессоре: модель процессора (CPU Model), название ядра (CPU Core), версия ядра (Revision). Кроме того, в данном окне приводится информация о технологиях, поддерживаемых процессором (PM Features). Активные технологии выделены синим цветом, а неактивные — черным. К примеру, в нашем случае активированы технология EIST (Enhanced Intel SpeedStep Technology) и технология тепловой защиты TM2 (Thermal Monitor 2).

 

Рис. 3. Окно General утилиты RMClock 2.05

Кроме того, в окне General отображаются тактовая частота ядра в реальном времени (Core Clock), частота троттлинга (Throttle), загрузка процессора (CPU Load) и загрузка процессора операционной системой (OS Load). В дальнейшем нам к тому же потребуется информация о минимальном, максимальном и текущем коэффициентах умножения (Multiplier (FID)) процессора и о минимальном, максимальном и текущем напряжении ядра процессора (Req. Vcore (VID)).

В окне Monitoring в графическом виде отображается информация о тактовой частоте процессора, частоте троттлинга, загрузке процессора и операционной системы, а также о коэффициенте умножения и напряжении ядра процессора (рис. 4).

 

Рис. 4. Окно Monitoring утилиты RMClock 2.05

В окне Advanced CPU Setting (рис. 5) на вкладке Processor можно активировать технологии, поддерживаемые процессором, и задать некоторые специфические настройки (правда, менять их вряд ли имеет смысл). Аналогичное высказывание можно сделать и в отношении настроек на вкладке Platform.

 

Рис. 5. Advanced CPU Setting утилиты RMClock 2.05

Окно Management and Profiles предназначено для настройки схем энергопотребления процессора (рис. 6). Здесь можно выбрать схему энергопотребления процессора при питании от сети (AC Power Profile) и при работе от аккумуляторной батареи (Battery Profile). Всего предусмотрено четыре схемы энергопотребления: No Management, Power Saving, Maximal Performance и Performance on Demand. Отметим, что данные схемы подменяют собой схемы питания, настраиваемые средствами операционной системы.

 

Рис. 6. Окно Management and Profiles утилиты RMClock 2.05

Кроме выбора схемы энергопотребления, можно задать ряд специфических опций (все они активированы по умолчанию), но их, впрочем, менять не рекомендуется.

И вот мы дошли до самого главного — настройки схем энергопотребления процессора.

В плане снижения энергопотребления процессора для нас представляют интерес две схемы — Power Saving и Performance on Demand. Отметим, что различия в возможностях по их настройке заключаются в том, что в схеме Power Saving настраивается только одна рабочая точка процессора, а в схеме Performance on Demand — все возможные одинаковые, поэтому мы рассмотрим процесс настройки на примере только схемы Performance on Demand.

Для того чтобы открыть окно настройки схемы энергопотребления Performance on Demand, необходимо в списке Management and Profiles выбрать пункт Performance on Demand. В появившемся окне (рис. 7) имеются две вкладки — AC Power и Battery. Соответственно вкладка AC Power предназначена для настройки данной схемы в режиме питания от сети, а вкладка Battery — в режиме питания от аккумуляторной батареи.

 

Рис. 7. Настройка схемы энергопотребления

Процесс настройки заключается в корректировке таблиц рабочих точек процессора. Чтобы скорректировать таблицу рабочих точек, используемую по умолчанию, необходимо отметить пункт Use P-State Transition (PST). В нашем случае процессор поддерживает применение восьми коэффициентов умножения (6.0х, 8.0х, 9.0х, 10.0х, 11.0х, 12.0х, 14.0х, 16.0х), поэтому всего возможно использование восьми рабочих точек. Каждому коэффициенту умножения, то есть каждой тактовой частоте процессора, соответствует определенное напряжение.

Для изменения напряжения первой рабочей точки (State 0) ее необходимо выделить и, нажав на правую кнопку мыши, в появившемся меню выбрать пункт Modify. Аналогично в данном меню можно выбрать пункты Add, Delete и Defaults. При выборе пункта Add появляется возможность добавить рабочую точку, при выборе пункта Delete рабочая точка удаляется, а при выборе пункта Defaults в рабочей точке устанавливается напряжение по умолчанию.

При выборе пункта Modify откроется новое диалоговое окно Add/Modify Performance State (рис. 8). В нашем случае, то есть для первой рабочей точки, соответствующей минимальной тактовой частоте (коэффициент умножения 6.0х), напряжение по умолчанию составляет 0,988 B. Это напряжение нужно попытаться уменьшить. Минимально возможное напряжение равно 0,7 В. Не факт, что при выборе данного напряжения процессор будет работать стабильно, но можно попытаться сразу задать минимальное напряжение, выбрав его в открывающемся списке. Если ноутбук при задании минимального напряжения в состоянии State 0 работает нестабильно, то процедуру необходимо повторить, увеличив напряжение. В итоге методом проб и ошибок можно найти минимальное напряжение, при котором процессор будет работать стабильно.

 

Рис. 8. Изменение напряжения рабочей точки

После того как найдено напряжение для состояния State 0, можно приступить к подбору напряжения для рабочей точки, соответствующей максимальному коэффициенту умножения. В нашем случае это состояние State 7 с коэффициентом умножения 16.0х и напряжением 1,34 В. Обратите внимание, что при изменении напряжения в состоянии State 0 также меняется напряжение во всех промежуточных рабочих точках, кроме последней. Для того чтобы изменить напряжение во всех промежуточных рабочих точках, необходимо отметить пункт Auto-adjust intermediate P-State VIDs в окне Add/Modify Performance State.

Для того чтобы проверить стабильность работы процессора при подборе напряжения в состоянии State 7, удобно использовать стресс-тест процессора. К примеру, можно воспользоваться тестом PCMark05, выбрав в нем только тесты для процессора. Если ноутбук стабильно проходит стресс-тест при заданном напряжении процессора, то можно попытаться еще снизить напряжение. В нашем случае методом проб и ошибок было найдено минимальное напряжение для коэффициента умножения 16.0х, равное 0,956 В. В результате диапазон напряжения процессора составил от 0,7 до 0,956 В вместо начального диапазона от 0,988 до 1,34 В.

На рис. 9 показано изменение напряжения, коэффициента умножения и тактовой частоты процессора при прохождении теста PCMark05. Как видно, коэффициенту умножения 16.0х (тактовая частота 1600 МГц) соответствует напряжение 0,956 В.

 

Рис. 9. Прохождение теста PCMark05 после изменения напряжения в рабочих точках

Нетрудно рассчитать и снижение энергопотребления процессора после задания новых значений напряжения в рабочих точках. Учитывая, что потребляемая процессором мощность прямо пропорциональна квадрату напряжения питания, для состояния State 0 потребляемая мощность снизится в 1,99 раза, а для состояния State 7 — в 1,96 раза. Во всех промежуточных рабочих точках процессора снижение потребляемой мощности составит от 1,99 до 1,96 раза.

Таким образом, путем корректировки таблицы рабочих точек процессора нам удалось снизить его энергопотребление почти вдвое в сравнении с энергопотреблением по умолчанию. Учитывая, что на долю процессора приходится приблизительно 30% всей потребляемой устройством мощности, общее энергопотребление ноутбука при этом сократится примерно на 18%.

Аналогичным образом можно настроить схемы энергопотребления Power Saving и Maximal Performance, однако в данном случае задается напряжение только для одной рабочей точки. Понятно, что для схемы Power Saving речь идет о рабочей точке, отвечающей минимальному коэффициенту умножения, а для схемы Maximal Performance — максимальному коэффициенту умножения.

При выборе схемы энергопотребления лучше выбрать схему Performance on Demand при питании ноутбука от сети, что позволит снизить нагрев процессора и сделать ноутбук еще более тихим, а при питании ноутбука от аккумуляторной батареи можно выбрать схему Power Saving или Performance on Demand.

Отметим, что утилиту RMClock можно использовать не только для настройки ноутбуков на базе мобильных версий процессоров, поддерживающих технологию Enhanced Intel SpeedStep. Данная утилита поддерживает также процессоры AMD с технологией Cool & Quite. Кроме того, все современные процессоры для настольных ПК поддерживают технологию Enhanced Intel SpeedStep или Cool & Quite, и в данном случае утилита RMClock может служить прекрасным инструментом для создания малошумных систем.

В заключение отметим, что после настойки таблицы состояния процессора и выбора схем энергопотребления можно настроить автоматический запуск утилиты RMClock при старте операционной системы. Для этого достаточно щелкнуть по иконке запущенной программы в системном трее правой кнопкой мыши и в открывшемся меню выбрать пункт Run Automatically on Startup.

Настройка энергопотребления процессора с помощью утилиты CPUMSR v.0.9

Еще одна позволяющая задавать соотношение между коэффициентом умножения процессора и напряжением питания утилита — это CPUMSR (www.cpuheat.wz.cz). Текущая версия утилиты 0.9 имеет ряд существенных ограничений в сравнении с утилитой RMClock. Фактически же в данном случае речь идет не о возможности корректировки таблицы соответствия коэффициентов умножения и напряжения питания, а о возможности задания для отдельного коэффициента умножения напряжения питания.

Для того чтобы определить соответствие между коэффициентом умножения и напряжением питания, необходимо запустить утилиту и перейти к вкладке Frequency & Voltage Control (рис. 10).

 

Рис. 10. Задание соответствия между коэффициентом умножения и напряжением питания в утилите CPUMSR v.0.9

Выбрав требуемый коэффициент умножения в списке Change Multiplier to:, необходимо задать для него напряжения питание в списке at a Voltage of:. При этом должно произойти переключение рабочий точки процессора в соответствии с установленными значениями.

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

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

В целом можно отметить, что, несмотря на один и тот же базовый принцип, реализованный в утилитах RMClock и CPUMSR (программирование MSR-регистров процессора), утилита RMClock значительно более функциональна.

 

В начало В начало

КомпьютерПресс 7'2006


Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует