Вход

Просмотр полной версии : Парковка ядер многоядерных процессоров в Windows 7


Slava
25.01.2010, 14:57
Одним из проблемных моментов современных многоядерных процессоров является их энергопотребление, для минимизации которого производители процессоров используют свои аппаратные технологии. Кроме того, производители процессоров дают рекомендации разработчикам операционных систем, за счет чего можно дополнительно снизить энергопотребление. При разработке Windows 7 и Windows 2008 R2 компания Microsoft прислушалась к таким рекомендациям от Intel.

Как известно, при работе на многоядерных процессорах, операционная система производит ротацию потоков между ядрами. Другими словами, переносит поток с более загруженных на менее загруженные ядра, что обеспечивает равномерную загрузку всех ядер системы. Но такая постоянная ротация приводит к потере производительности и повышению энергопотребления. Чтобы изменить ситуацию в Windows 7 и Windows 2008 R2, была реализована функция "идеального ядра", которая оставляет выполнение процесса на том ядре, на котором он начался, до полного его завершения. Такой подход позволяет получить более отзывчивую систему. Кроме того, с подходом "идеального ядра", была реализована функция "парковка ядер", позволяющая переносить все задачи на одно ядро, а остальные переводить в бездействие, если это позволяет уровень основной нагрузки. Соответственно, совместная работа двух функций позволяет минимизировать число использования ядер в режиме бездействия, что в свою очередь приведет к снижению энергопотребления и получению более отзывчивой системы.

http://screen.battlefox.ru/data/570/11.gif
Core Parking в конфигурации с минимальным энергопотреблением.
http://screen.battlefox.ru/data/570/2.gif
Работа Core Parking при возрастании вычислительной нагрузки.

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

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\0cc5b647-c1df-4637-891a-dec35c318583]
"Attributes"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb]
"Attributes"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\5d76a2ca-e8c0-402f-a133-2158492d58ad]
"Attributes"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\a55612aa-f624-42c6-a443-7397d064c04f]
"Attributes"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\ea062031-0e34-4ff1-9b6d-eb1059334028]
"Attributes"=dword:00000000После этого перейти в Панель управления -> Электропитание -> Настройка плана электропитания -> Изменить дополнительные параметры питания -> Управлением питания процессора и выставить следующие значения параметров:
http://screen.battlefox.ru/data/570/325.jpg


В Минимальное число ядер в состоянии простоя (Processor performance core parking min cores) - Установить 25% для четырех ядерного процессора - или 50% для двух ядерного процессора.
В Разрешить состояния снижения питания (Allow Throttle States) – Включить.
В Отключение простоя процессора (Processor idle disable) - Включить состояние простоя.
В Переопределение ядра приостановки ядра производительности процессора (Processor performance core parking core override) – Отключено.
В Максимальное число ядер в состоянии простоя (Processor performance core parking max cores) - Установить 75% для четырех ядерного процессора или 50% для двух ядерного процессора.

Вызвав Монитор ресурсов через Диспетчер задач, на вкладке ЦП можно будет увидеть, переопределение и парковку ядер.

http://screen.battlefox.ru/data/570/Power_Core_Parking_01-1.png
http://screen.battlefox.ru/data/570/Power_Core_Parking_01-2.png
http://ru.intel.com/business/community/index.php?automodule=blog&blogid=1960&showentry=1100

MacGear
25.01.2010, 21:57
Slava,
Это действительно снижает тепловыделение, кто уже пробовал? Не получится что и это окажется в мифах оптимизации (http://forum.battlefox.ru/showthread.php?t=13660)? Почему это не сделали в семёрке изначально? Чисто любопытство, у меня то проц и под нагрузкой комнатный.

Slava
25.01.2010, 22:00
MacGear, это не миф, все работает, а не сделано изначально потому что это снижает производительность, это нужно для ноутов и компов где важно энергопотребление. В планах электропитания всегда нужно выбирать для себя оптимальное решение. Производительные компы сильно греются и много потребляют, при снижении производительности обратный эффект, не греются и мало потребляют, но и ползают медленнее. ;)

Ringo
25.01.2010, 22:25
Кстати, смешной фактик про режимы энергопотребления - для меня, не смотря на то, что я в ту же КоД играю, идеальным оказался экономный режим - заметно тише, а производительность вполне достаточная, чтоб комфортно заниматься своими делами, разве что в некоторых ФуллХД фильмах бывают подтормаживания - тогда режим меняю. А так всё хорошо - и комп сутками работает, и не тормозит ничего, а после того, как корпусный кулер на вдув развернул - процессорный, стоковый вообще стих)

Slava
25.01.2010, 22:51
Ringo, код по идее не очень требователен, я о том и говорю каждый сам для себя выбирает. Я вообще асусовскую фиху юзаю EPU-6 Engine, она в простое снижает частоту шины (соответственно проца и памяти) и понижает напругу, а при играх наоборот разгоняет немного.
99767
вот при простое и и в макс нагрузке, притом множители еще меняются постепенно 6-7-8-9
9976599766

Kletska
26.01.2010, 00:50
Я вообще асусовскую фиху юзаю EPU-6 Engine, она в простое снижает частоту шины (соответственно проца и памяти) и понижает напругу, а при играх наоборот разгоняет немного
Она для конкретных моделей материнок своя или универсальная? Можно ссылочку на программу для работы в Win7 x64?

Slava
26.01.2010, 01:26
Kletska, эта прога для плат с микросхемой EPU, на P5B такой нет. Но там вроде было что то подобное, погугли ASUS AI Gear, не знаю насчет поддержки Win7 x64, наверное есть в ASUS Ai Suite (ftp://ftp.asus.com.tw/pub/ASUS/misc/utils/), только версию нужно подходящую найти (наверное что то типа AISuite_V10542_WinXPVistaWin7.zip (ftp://ftp.asus.com.tw/pub/ASUS/misc/utils/AISuite_V10542_WinXPVistaWin7.zip)), но когда у меня такая мать была я эту функцию не юзал, чет не привлекла.

MacGear
26.01.2010, 10:01
Я вообще асусовскую фиху юзаю EPU-6 Engine, она в простое снижает частоту шины (соответственно проца и памяти) и понижает напругу, а при играх наоборот разгоняет немного.
У Гигабайта есть подобная утилита, я после покупки матери её попробовали и обнаружил неприятный эффект в играх. Тогда играл в Race Driver Grid и эти разгоны и торможения отражались в игре такими же ускорениями и нормализацией так что играть мягко говоря не комфортно.

Slava
26.01.2010, 11:04
MacGear, у меня все ок, да и перед игрой можно легким движением руки по значку в трее, вызвать меню и включить стабильный или разгонный режим без автоматических переключений, а вот всякие AI-N.O.S. и выключения жесткого диска я вырубил в ней, а то система ни с того ни с сего иногда к примеру при просмотре фильмов думала, что пора уснуть и вырубала экран.

Это на подобии как при C1E Support множитель скачет 6/9, только здесь более шире, множитель постепенно повышается 6-7-8-9 плюс частоты и напруга тоже, при нагрузке переключение происходит быстро и тормозов не замечено. Зато потребление и тепловыделение реально снизилось. А главное тишина.

Slava
26.05.2017, 17:03
Вернусь к этой далекой теме)

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

Поэтому парковка ядер только мешает и временами вызывает фризы, отключить самое простое при помощи маленькой утилитки ParkControl..:: Скрытый текст<br />Вы должны войти под своим логином или зарегистрироваться и иметь 25 сообщение(ий) ::.
125699

1) Запускаем прогу,
2) Выбираем в ниспадающем списке профиль "Высокая производительность" проверяем, чтобы все пункты Parking были выключены, 100%, выключаем где вкл.
3) Жмем [Применить].
4) После чего желательно перегрузить комп.

Радуемся работе всех ядер.https://www.youtube.com/watch?v=ph2VWb1aBMw


Но есть мнение, что при помощи программы эффект хуже, чем при ручной настройке политики питания. Для этого

1) Применяем все те же настройки, что в начале темы, для включения дополнительных функций управления питанием
.:: Скрытый текст<br />Вы должны войти под своим логином или зарегистрироваться и иметь 25 сообщение(ий) ::.
2) выставляем в дополнительных настройках электропитания:

Минимальное число ядер в состоянии простоя: 99%.
Разрешить состояния снижения питания: Вкл.
Отключение простоя процессора: Включить состояние простоя.
Минимальное состояние процессора: 0%.
Политика охлаждение системы: Активный.
Переопределение ядра приостановки ядра производительности процессора: Включено.
Максимальное состояние процессора: 100%.
Максимальное число ядер в состоянии простоя: 100%.
125702
3) После чего желательно перегрузить комп.

Работаем, при применении настроек, все ядра в диспетчере задач во время игры (или любое другое многопоточное задание), практически загружаются равномерно. Выключена только парковка ядер, другие энергосберегающие технологии остались на месте!

https://people.overclockers.ru/Vovantro/17836/Windows_7_i_u_Vas_frizit_v_Battlefield_4_UnparkCPU _Vam_osobo_ne_pomozhet/

p.s. опробовано на intel реально повышает производительность.

urry
26.05.2017, 20:15
Slava, а я сделал эту процедуру в вин 10.
Этот гайд вообще актуален для 10-ки, или в ней и так все сделано по умолчанию ?

Slava
26.05.2017, 22:39
urry, актуален, и даже более чем, ввиду новой функции энергосбережения ядер, в 10-ке, когда ядро паркуется останавливался счётчик времени ядра и не всегда запускается корректно, в 7-ке он не останавливался... это может вызывать фризы, периодически музыка, киношки, игры могут заикаться на несколько секунд. Лучше юзать ручную настройку политик, а если полностью заблокировать функцию парковки, то игры могут перестать распределять нагрузку на все ядра и работать на одном, это вызывает тормоза...