Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Двоядерні процесори - новий вектор розвитку ПК



Лекція №

ДВОЯДЕРНІ ПРОЦЕСОРИ - НОВИЙ ВЕКТОР РОЗВИТКУ ПК

ВІД СУПЕРСКАЛЯРНОСТИ ДО SMP, МИНАЮЧИ VLIW

Мета:

 

– навчити основним технологіям двоядерних процесорів;

– розвити навички у використання сучасних понять;

– виховати правильне відношення до сучасного темпу інформатизації.

 

План:

 

1. Суперскалярність SMP, VLM.

2. Heper-threading – перший крок до SMP.

3. Функціональність.

Питання для самоконтролю:

1. Чи однаково завантажуються два ядра у двоядерного процесора?

2. Що припускає технологія Hyper-Threading?

3. Що таке FSB?

4. Що припускає технологія SMP?

5. Суть методу паралельного виконання коду?

6. Дайте визначення конвеєр?

7. Що таке конвеєр інструкцій?

8. Назвіть суть методу суперскалярної обробки даних?

9. Перелічите недоліки суперскалярної обробки даних?

10. Що таке технологія VLIW?

11. Якою операційною системою підтримується технологія SMP?

12. Чи використовується технологія двуядерності в іграх?

13. Чим відрізняється SMT-процесор від суперскалярного?

14. Чи можна із двуядерного процесора зробити чотириядерний?

15. Назвіть моделі двуядерних процесорів?

16. Чим відрізняються процесори Pentium D, Pentium EE?

17. Дайте визначення поняттю суперскалярність?

18. Що таке суперскалярність?

 

Питання для самостійної роботи:

1. Чотирьох ядерні процесори. [1.1], c. 20 – 54.

2. Шина FSB. [2.1], c. 12 – 25.

Література:

1. Основна:

1.1. Мікропроцесорна техніка: Підручник/ Ю.І. Якименко та інш. – К.: ІВЦ Політехніка; Кондор, 2004. с. 39 – 42.

 

2. Додаткова:

2.1. Мюллер, Скотт. Модернізація і ремонт ПК, 17-е изд.: -- М.: Издательский дом «Вильямс», 2006. с. 371 – 400.


ДВОЯДЕРНІ ПРОЦЕСОРИ - НОВИЙ ВЕКТОР РОЗВИТКУ ПК

ВІД СУПЕРСКАЛЯРНОСТИ ДО SMP, МИНАЮЧИ VLIW

Паралельне виконання програмного коду — один з найефективніших способів збільшення продуктивності обчислювальної системи. У том або іншому виді він широко застосовується у всіх класах обчислювальних систем, від КПК до суперкомп'ютерів. Зокрема, всі сучасні процесори, які використовуються в ПК, реалізують принцип суперскалярної обробки. Суть цього методу полягає в тому, що процесор самостійно аналізує потік команд, що надходять на виконання, оцінюючи можливість їх «распараллеливания». Команди, не зв'язані один з одним, можуть бути виконані одночасно — для цього у процесора є кілька конвеєрів обробки даних.

Конве́йерце спосіб організації обчислень, який використовується у сучасних процесорах і контролерах з метою прискорення виконання інструкцій (збільшення числа інструкцій, які виконуються в одиницю часу).



Ідея складається в поділі обробки машинної інструкції на послідовність незалежних стадій з пам'яттю наприкінці кожної стадії. Це дозволяє керуючим схемам ініціювати обробку інструкцій з темпом обробки на самій повільній стадії, що набагато швидше, ніж час, необхідне для виконання всіх стадій відразу. Таким чином, у кожен момент часу в різних стадіях обробки перебувають кілька інструкцій. Це схемотехнічне рішення зветься конвеєр інструкцій.

Метод суперскалярної обробки істотно збільшує ефективність роботи процесора, однак на сьогоднішній день він себе вже вичерпав. Недолік його полягає у тому, що «распараллеливание» команд відбувається винятково силами самого процесора. Завдання аналізу команд досить складна, воно вимагає витрат додаткових апаратних ресурсів і не завжди може бути вирішені позитивно.

Для наочності можна представити, що команди надходять у процесор, будучи організованими в незалежних друг від друга потоках. Тоді їх можна виконувати паралельно без спеціального аналізу. Нехай попередній аналіз і «распараллеливание» команд виконує компілятор у процесі зборки й підготовки програми. У цьому випадку цілком передбачуваний ефект прискорення виконання практично для будь-якої програми. Подібний прийом звичайно називається VLIW - інструкції з дуже довгим словом. Саме цей метод реалізований у процесорах Intel Itanium. Уже на стадії компіляції процесорні інструкції аналізуються на предмет можливості паралельного виконання, після чого впаковуються спеціальним образом - у довгі складені команди. Процесор не витрачає час на аналіз і переупорядкування інструкцій для паралельної обробки, тому що споконвічно має всю необхідну інформацію. На жаль, VLIW-процесори використовують спеціальний набір інструкцій, не сумісний з набором інструкцій процесорів x86. Для платформи ПК, на якій виконуються мільйони різних програм, завдання повної перекомпіляції всього програмного забезпечення представляється практично неможливої. Корпорація Intel спробувала застосувати VLIW в області середніх і потужних серверів, зштовхнувшись при цьому з рядом труднощів.

VLIW (англ. Very long instruction word - «дуже довга машинна команда») - архітектура процесорів з декількома обчислювальними пристроями. Характеризується тим, що одна інструкція процесора містить кілька операцій, які повинні виконуватися паралельно.

Попередній аналіз і «распараллеливание» команд виконує компілятор у процесі зборки й підготовки програми, саме цей метод реалізований у процесорах Intel Itanium

Підхід VLIW сильно спрощує архітектуру процесора, перекладаючи завдання розподілу обчислювальних пристроїв на компілятор. Оскільки відсутні більші й складні вузли, сильно знижується енергоспоживання.

У той же час, код для VLIW має невисоку щільність. Через велику кількість порожніх інструкцій для пристроїв, що простоюють, програми для VLIW-процесорів можуть бути набагато довше, ніж аналогічні програми для традиційних архітектур.

Більше універсальний і простій у реалізації, хоча й дорогий метод, — симетрична багатопроцесорна обробка (SMP). Можна представити, що в системі є кілька ідентичних процесорів, кожний з яких працює практично незалежно від інших. (однак не можна забувати, що кожен чип працює зі своєю багаторівневою кеш-пам'яттю, звідси виникає необхідність синхронізувати вміст кєша з кєшами інших процесорів і вмістом пам'яті, а це завдання вирішується за допомогою спеціального протоколу синхронізації). Якщо на процесори подавати незалежні потоки команд, вони будуть працювати одночасно, що в підсумку дозволить збільшити швидкість роботи всієї системи.

Принцип SMP у серверних системах застосовується давно й успішно, але в настільних системах дотепер не зустрічався. Основна перешкода, безумовно, зв'язано зі складністю архітектури багатопроцесорної машини. Для двох процесорів необхідні спеціальні материнські плати зі складним розведенням, могутніші блоки живлення, інші корпуси й системи охолодження й т.д., що значно здорожує систему. Існують складності й із програмним забезпеченням, хоча й не такі нерозв'язні. Зокрема, операційна система Windows XP повністю підтримує SMP, забезпечуючи розподіл потоків між процесорами. Ряд програмних продуктів, особливо мультимедійних (обрахування 2D- і 3D-графіки, стиск аудіо- і відеоданих), уже оптимізовані під багатопроцесорну обробку.

HYPER-THREADING - ПЕРШИЙ КРОК ДО SMP

На практиці більшість програм для ПК все-таки працюють лінійно, вони навіть теоретично не здатні виконуватися швидше на багатопроцесорних системах. Розроблювачі могли б зайнятися їхньою оптимізацією для багатопроцесорного виконання, але в цьому немає необхідності - у більшості ПК установлені одноядерні процесори.

Споконвічну проблему «курки і яйця» корпорація Intel вирішила за допомогою технології Hyper-Threading. Симетрична багатопоточна обробка (SMT) є проміжним рішенням проблеми реалізації багатопроцесорності в настільній системі. SMT-процесор «усередині» працює практично так само, як суперскалярний: вільні обчислювальні блоки, для яких на даному етапі не найшлося роботи, завантажуються командами, призначеними для другого логічного процесора. Тим самим досягається більше ефективне завантаження процесора, знижується відсоток його простою. У той же час «зовні», для операційної системи й ПЗ, створюється повна ілюзія двупроцесорного виконання: є два незалежних процесори, кожний з яких здатний обробляти свій потік даних.

Звичайно, Hyper-Threading лише частково вирішує питання продуктивності, тому що ця технологія дозволяє оптимально завантажити процесор, доповнюючи механізм суперскалярності механізмом незалежних програмних потоків. Але адже два логічних процесори не є в реальності незалежними: вони по черзі використають загальні ресурси, можуть взаємно блокуватися через конфлікти доступу, через що працюють нерівномірно.

Проте саме Hyper-Threading стала першою спробою прищепити принцип багатопроцесорної обробки в настільних ПК. Розроблювачі ПЗ й користувачі почали звикати до думки про те, що процесор може обробляти дані в кілька потоків. Це й обумовило появу на світло дійсних багатоядерних процесорів — Intel Pentium Extreme Edition, Pentium D й AMD Athlon 64 X2.

PENTIUM D Й PENTIUM EE - ПЕРШЕ ПОКОЛІННЯ

З випуском двоядерних процесорів Intel остаточно позбувається від нумерації імен процесорів. Замість «Pentium 4» чипи тепер будуть називатися просто «Pentium», а додаткова буква буде позначати модель використання, по суті ринкову нішу. Універсальний процесор для настільних систем називається тепер Pentium D (D - «desktop»), а Pentium Extreme Edition орієнтований на потужні ігрові й професійні машини, у тому числі на робочі станції на базі ПК.

Обоє нових процесора, як Pentium D, так й Pentium EE, побудовані по одній архітектурі. Два процесорних ядра, повністю ідентичні ядру Prescott з 1 Мб кеш-пам'яті другого рівня (L2), використовуваному в Pentium 4, перебувають на одному кристалі й з'єднані разом за допомогою системної шини. Кристал упакований у стандартний корпус FC-LGA4 і встановлюється в рознімання LGA775.

СУМІСНІСТЬ

Двоядерні процесори не будуть працювати на материнських платах із чипсетами Intel 865/875. Чипсети i915/925 теж їх не підтримують. Залишаються тільки останні набори мікросхем Intel - 945 й 955. Вартість материнських плат на їхній базі якийсь час буде зберігатися на високому рівні. Звичайно, інші виробники теж будуть пропонувати чипсети з підтримкою двоядерних процесорів, але більшість покупців топових систем зовсім небезпідставно актуальне рішення Intel.

Ще одне питання сумісності пов'язаний із блоками живлення. Подвоєння числа ядер, мабуть, веде до росту споживаної потужності, хоча й не вдвічі, як можна було припускати: термопакет Pentium EE й Pentium D, за винятком молодшої моделі, становить 130 Вт, що майже на третину більше, ніж в Pentium 4. Відповідно до спостережень самих інженерів Intel, стабільна робота двоядерної системи можлива лише при використанні блоків живлення стандарту ATX 2.0 потужністю не менш 400 Вт. У корпусах комп'ютерів більшості користувачів коштують більше слабкі блоки живлення.

ФУНКЦІОНАЛЬНІСТЬ

Незважаючи на фізичну ідентичність процесорів Pentium D й EE між ними є істотні розходження у функціональності. Почати хоча б з того, що технологія Hyper-Threading буде працювати тільки в процесора Pentium EE. Відповідно, у системі він буде відображатися як чотири логічних процесори. Отут, до речі, цікавий питання, наскільки ефективно операційна система буде розподіляти навантаження між ними, адже ці чотири процесори мають неоднакову природу. Процесори Pentium D працюють тільки як два логічних процесори.

З іншого боку, в Pentium EE була відключена технологія Enhanced SpeedStep. Цей процесор не допускає динамічного керування частотою й напругою з боку операційної системи, працюючи тільки в режимі максимальної продуктивності. Але в нього збережена можливість зниження частоти в аварійному випадку — при перегріві (функція Thermal Monitor 2), а також при простої системи (режим Halt C1E). Процесори Pentium D, навпроти, піддаються програмному керуванню. Виключення становить молодша модель, Pentium D 820, у якої немає підтримки SpeedStep. Представники Intel підтвердили, що викликано це технічними міркуваннями: множник частоти 14х для Pentium D є мінімально можливим, а модель 820 саме має саме такий множник. Виходить, що молодшому процесору знижувати частоту вже нікуди.

Зниження частоти й напруги обох ядер процесора виконують синхронно й лише при відсутності навантаження на обох. Теоретично можливо незалежне зниження частоти лише одним з ядер. Оскільки живлення на обоє ядер подається одночасно, управляти ними окремо неможливо. Температура виміряється тільки в одного з ядер, хоча тестування показує, що захисний механізм троттлинга може включатися в обох незалежно.

На закінчення варто відзначити, що всі нові процесори підтримують як Execution Disable Bit (захист буфера від виконання коду), так й EM64T (64-бітні інструкції).

ПРОДУКТИВНІСТЬ

Зрозуміло, що по продуктивності кожне ядро в складі двоядерного процесора Intel ідентично процесору Pentium 4 з аналогічною тактовою частотою. Інша справа, наскільки ефективно будуть завантажені обидва процесори. Існують певні перешкоди для 100% завантаження двоядерного процесора, причому як апаратного, так і програмного характеру.

Процесорна шина й канал підключення до пам'яті можуть не впоратися зі зрослою вдвічі навантаженням, що приведе до появи вузького місця в системі, що неможливо усунути. Необхідно буде наростити частоти FSB і пам'яті. Друга перешкода обумовлена тим, що завантаження обох процесорів можлива лише у двох випадках, коли додаток спеціально ділить складні обчислення на парну кількість потоків або коли одночасно виконуються кілька додатків. У випадку виконання на комп'ютері однопотокових додатків, до яких, до слова, ставляться всі сучасні ігри, другий логічний процесор буде займатися виконанням допоміжних завдань, що не дасть ніякого ефекту. Типова модель використання ПК саме й не припускає активного використання SMP: користувач або готовить документи, або дивиться відео, або читає пошту, але не робить все це одночасно.

Отут може прийти рятуйте! віртуалізації, що Intel після декількох років розробки готова запропонувати користувачам. Спеціальні апаратні рішення дозволять програмним продуктам, що реалізують віртуалізацію (Microsoft Virtual PC, VMware), забезпечувати більше стабільну й продуктивну роботу віртуальних машин у рамках фізичної машини. Технологія віртуалізації відкриває нові можливості для використання ПК будинку й в офісі: наприклад, частина ресурсів, вільних під час гри або при роботі з текстом, можна витратити на відтворення музики й відео, забезпечивши в такий спосіб роботу декількох незалежних комп'ютерів у рамках однієї системи. Ще одна перевага віртуалізації складається в повній ізоляції декількох логічних систем друг від друга, оскільки всі ресурси, включаючи апаратні, є віртуальними й тому піддаються адмініструванню, у тому числі вилученому. Це підвищує рівень безпеки й контролю, що немаловажно для корпоративного середовища. І звичайно, віртуалізація легко може одержати реальний виграш від наявності багатоядерних процесорів і багатопроцесорної обробки.

 

Рис. 1.1 – Розподіл обчислювальної роботи між ядрами

Чи однаково завантажуються два ядра у двоядерного процесора?

Що припускає технологія Hyper-Threading?

Що таке FSB?

Що припускає технологія SMP?

 

Суть методу паралельного виконання коду?

Дайте визначення конвеєр?

Що таке конвеєр інструкцій?

Назвіть суть методу суперскалярної обробки даних?

 

Перелічите недоліки суперскалярної обробки даних?

Що таке технологія VLIW?

Чи може компілятор створити програму для двуядерного процесора?

Якою операційною системою підтримується технологія SMP?

 

Чи використовується технологія двоядерності в іграх?

Чим відрізняється SMT-процесор від суперскалярного?

Чи можна із двоядерного процесора зробити чотириядерний?

Назвіть моделі двоядерних процесорів?

 

Чим відрізняються процесори Pentium D, Pentium EE?

Дайте визначення поняттю суперскалярність?

Що таке суперскалярність?

Наведіть двоядерні моделі процесорів?

 

Яке енергоспоживання процесорів Pentium D, Pentium EE?

Чи буде працювати технологія Hyper-Threading у процесорів Pentium EE, Pentium D, чому?

Чим відрізняється два логічних процесори від технології Hyper-Threading?

Що припускає технологія Enhanced SpeedStep?

 

Яка функція процесора використовується при перегріві процесора?

Для чого функція процесора Thermal Monitor 2?

Який режим процесора використовується при простої системи?

Для чого режим процесора Halt C1E?

 

Які інструкції підтримують нові процесора 32-бітні, 64-бітні?

Яку роль грає FSB при проектуванні двоядерних платформ?

Назвіть технологію Microsoft по віртуалізації?

Який метод роботи реалізовано у процесорах Intel Itanium V?

 

Конвеєр –

VLIW –

Thermal Monitor 2 –

SpeedStep –

 

Hyper-Threading –

SMP –

Halt C1E –

Суперскалярність –

FSB –


 

Чи однаково завантажуються два ядра у двоядерного процесора?

Що припускає технологія Hyper-Threading?

Що таке FSB?

Що припускає технологія SMP?

 

Суть методу паралельного виконання коду?

Дайте визначення конвеєр?

Що таке конвеєр інструкцій?

Назвіть суть методу суперскалярної обробки даних?

 

Перелічите недоліки суперскалярної обробки даних?

Що таке технологія VLIW?

Чи може компілятор створити програму для двуядерного процесора?

Якою операційною системою підтримується технологія SMP?

 

Чи використовується технологія двоядерності в іграх?

Чим відрізняється SMT-процесор від суперскалярного?

Чи можна із двоядерного процесора зробити чотириядерний?

Назвіть моделі двоядерних процесорів?

 

Чим відрізняються процесори Pentium D, Pentium EE?

Дайте визначення поняттю суперскалярність?

Що таке суперскалярність?

Наведіть двоядерні моделі процесорів?

 

Яке енергоспоживання процесорів Pentium D, Pentium EE?

Чи буде працювати технологія Hyper-Threading у процесорів Pentium EE, Pentium D, чому?

Чим відрізняється два логічних процесори від технології Hyper-Threading?

Що припускає технологія Enhanced SpeedStep?

 

Яка функція процесора використовується при перегріві процесора?

Для чого функція процесора Thermal Monitor 2?

Який режим процесора використовується при простої системи?

Для чого режим процесора Halt C1E?

 

Які інструкції підтримують нові процесора 32-бітні, 64-бітні?

Яку роль грає FSB при проектуванні двоядерних платформ?

Назвіть технологію Microsoft по віртуалізації?

Який метод роботи реалізовано у процесорах Intel Itanium V?

 

Конвеєр –

VLIW –

Thermal Monitor 2 –

SpeedStep –

 

Hyper-Threading –

SMP –

Halt C1E –

Суперскалярність –

FSB –


Дата добавления: 2015-10-21; просмотров: 37 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Лабораторная работа в пакете Scilab | По системе кинопроекции:

mybiblioteka.su - 2015-2024 год. (0.032 сек.)