Багатоядерні процесори: принципи роботи

У сучасних багатоядерних процесорах на одному кристалі кремнію розташовується два і більше обчислювальних ядер. При цьому, кожне ядро ​​здатне підтримувати обчислення двох і більше потоків. Застосування багатоядерних процесорів дозволяє прискорити роботу операційних систем і додатків, що підтримують багатопоточність.
  • Що таке багатоядерний процесор?
  • Hyper-threading
  • Види багатоядерних процесорів
  • Принцип роботи
 багатоядерні процесори: принципи роботи
Багатоядерні процесори являють собою центральні процесори, в яких міститься більше двох обчислювальних ядер. Такі ядра можуть знаходитися як в одному корпусі, так і на одному процесорному кристалі.

Що таке багатоядерний процесор?


Найчастіше під багатоядерними процесорами розуміють центральні процесори, вяких кілька обчислювальних ядер інтегровані в одну мікросхему (тобто вони розташовані на одному кристалі кремнію).
Зазвичай тактова частота в багатоядерних процесорах навмисно занижується. Це роблять для того, щоб скоротити енергоспоживання, зберігши при цьому необхідну продуктивність процесора. Кожне ядро ​​при цьому є повноцінним мікропроцесор, для якого характерні риси всіх сучасних процесорів - він використовує багаторівневий кеш, підтримує позачергове виконання коду і векторні команди.

Hyper-threading


ядра в багатоядерних процесорах можуть підтримувати технологію SMT, що дозволяє виконувати кілька потоків обчислень і створювати на основі кожного ядра кілька логічних процесорів. На процесорах, які випускає компанія Intel, така технологія називається «Hyper-threading». Завдяки їй можна подвоювати число логічних процесорів в порівнянні з числом фізичних чіпів. У мікропроцесорах, що підтримують цю технологію, кожен фізичний процесор здатний зберігати стан двох потоківодночасно. Для операційної системи це буде виглядати, як наявність двох логічних процесорів. Якщо в роботі одного з них виникає пауза (наприклад, він чекає отримання даних з пам'яті), інший логічний процесор приступає до виконання свого потоку.

види багатоядерних процесорів


Багатоядерні процесори поділяються на кілька видів. Вони можуть підтримувати використання загальної кеш-пам'яті, а можуть не підтримувати. Зв'язок між ядрами реалізується на принципах використання розділяється шини, мережі на каналах точка-точка, мережі з комутатором або використання загального кеша.

Принцип роботи


Більшість сучасних багатоядерних процесорів працює за наступною схемою. Якщо запущене застосування підтримує багатопоточність, воно може змушувати процесор виконувати кілька завдань одночасно. Наприклад, якщо в комп'ютері використовується 4-ядерний процесор з тактовою частотою 1.8 ГГц, програма може «завантажити» роботою відразу всі чотири ядра, при цьому сумарна частота процесора становитиме 7.2ГГц. Якщо запущено відразу декілька програм, кожна з них може використовувати частину ядер процесора, що теж призводить до зростання продуктивності комп'ютера.
Багато операційних систем підтримують багатопоточність, тому використання багатоядерних процесорів дозволяє прискорити роботу комп'ютера навіть у випадку додатків, які многопоточность не підтримують. Якщо розглядати роботу тільки однієї програми, то використання багатоядерних процесорів буде виправданим лише в тому випадку, якщо це додаток оптимізований під багатопоточність. В іншому випадку, швидкість роботи многоядерного процесора не буде відрізнятися від швидкості роботи звичайного процесора, а іноді він буде працювати навіть повільніше.




ЩЕ ПОЧИТАТИ