Паркування ядер багатоядерних процесорів у Windows 7, Drahelas - Форум міста Салехард та

Для багатьох ядерних продуктів енергозбереження не найменш важливий фактор.

Одним із проблемних моментів сучасних багатоядерних процесорів є їхнє енергоспоживання, для мінімізації якого виробники процесорів використовують свої апаратні технології. Крім того, виробники процесорів дають рекомендації розробникам операційних систем, за рахунок чого можна додатково зменшити енергоспоживання. Під час розробки Windows 7 і Windows 2008 R2 компанія Microsoft прислухалася до таких рекомендацій від Intel. Як відомо, під час роботи на багатоядерних процесорах, операційна система здійснює ротацію потоків між ядрами. Іншими словами, переносить потік із більш завантажених на менш завантажені ядра, що забезпечує рівномірне завантаження всіх ядер системи. Але така постійна ротація призводить до втрати продуктивності та підвищення енергоспоживання. Щоб змінити ситуацію в Windows 7 і Windows 2008 R2, було реалізовано функцію "ідеального ядра", яка залишає виконання процесу на тому ядрі, на якому він почався, до повного його завершення. Такий підхід дозволяє отримати більш чуйну систему. Крім того, з підходом "ідеального ядра", була реалізована функція "паркування ядер", що дозволяє переносити всі завдання на одне ядро, а інші переводити в бездіяльність, якщо це дозволяє рівень основного навантаження. Відповідно, спільна робота двох функцій дозволяє мінімізувати кількість використання ядер у режимі бездіяльності, що у свою чергу призведе до зниження енергоспоживання та отримання більш чуйної системи.

Core Parking у конфігурації з мінімальним енергоспоживанням.

Робота Core Parking у разі зростання обчислювального навантаження.

Для відображення параметрівпаркування ядра в графічному інтерфейсі панелі управління необхідно імпортувати в реєстр наступні значення: "Значення:" (я користувався) Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\cc5b647-c1df-4637-891a-dec35 0000 [HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb]

>0 MACHINE\SYSTEM\CurrentControlSet\Control \Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\5d76a2ca-e8c0-402f-a133-2158492d58ad] "Attributes"=dword:000 urrentControlSet\Control\Power\PowerSettings \54533251-82be-4824-96c1-47b60b740d00\a55612aa-f624-42c6-a443-7397d064c04f] "Attributes"=dword:000000000 Control\Power\PowerSettings\54533251-82be -4824-96c1-47b60b740d00\ea062031-0e34-4ff1-9b6d-eb1059334028] "Attributes"=dword:00000000

Після цього перейти в Панель керування -> Електроживлення -> Налаштування плану електроживлення -> Змінити додаткові параметри -> Управління живлення процесора і виставити наступні значення параметрів:

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