Многопроцессорные компьютеры. Гиперпотокова технология

і були єдиними x86-опцій до випуску лінійки процесорів AMD Opteron в 2004 році. Обидві лінійки процесорів мали свій власний вбудований кеш, але по різному забезпечують доступ до пам'яті, що розділяється: процесори Xeon через загальний канал, а процесори Opteron через незалежні магістралі до системної оперативної пам'яті.
Багатопроцесорні (багатоядерні) чіпи, включає більше одного процесора, поміщеного в однокристальну схему, і можуть вважатися самою граничною формою багатопроцесорної обробки з сильним зв'язком. Мейнфреймовиє системи з безліччю процесорів — часто є системами з сильним зв'язком.
Багатопроцесорні системи з гнучким зв'язком (Loosely-coupled multiprocessor systems), часто звані кластерами, засновані на множинних автономних одиночних або подвійних комп'ютерах, зв'язаних через високошвидкісну систему зв'язку (наприклад, Gigabit Ethernet). Кластер Беовульфа під управлінням Linux — приклад гнучко зв'язаної системи.
Системи з сильним зв'язком працюють краще і фізично вони менші, ніж гнучко зв'язані системи, але історично зажадали великих початкових інвестицій і можуть швидко амортизуєтся; вузли в гнучко зв'язаній системі — зазвичай недорогі комп'ютери і можуть бути використані як незалежні машини після видалення з кластера.
Системи з сильним зв'язком мають тенденцію бути набагато більше енергоефективними, чим кластери. Це відбувається тому що значні економічні системи можуть бути реалізовані, за допомогою проектування компонентів, спочатку призначених для роботи в системах з сильним зв'язком, тоді як гнучко зв'язаних системах використовують компоненти, які призначені не обов'язково для використання в таких системах.
Багатопроцесорна обробка з SISD
У комп'ютері з одиночним потоком команд і одиночним потоком даних один процесор послідовно обробляє команди; кожна машинна команда обробляє один елемент даних
Приклад — фон-неймановска архітектура.

Багатопроцесорна обробка SIMD
У комп'ютері з одиночним потоком команд і множинним потоком даних один процесор обробляє потік команд, кожна з яких може виконати паралельні обчислення на безлічі даних.
Багатопроцесорна обробка SIMD добре підходить для паралельної або векторної обробки, в якій великий набір даних може бути роздільний на частини, які обробляються ідентичними, але незалежним операціями. Одиночний потік команд направляє операцію модулів мультипрограмування для виконання однотипних маніпуляцій одночасно на потенційно великій кількості даних.
Для певних типів обчислювальних застосувань цей тип архітектури може дати значне збільшення продуктивності з погляду витраченого часу. Проте, недолік цієї архітектури полягає в тому, що велика частина системи починає простоювати при виконанні програм або системних завдань, які не можуть бути розділені на модулі (підзадачі), які можуть бути оброблені паралельно.
Крім того, програми повинні бути ретельно і спеціально написані, щоб мати можливість максимально задіювати можливості архітектури. Часто застосовуються спеціальні оптимізуючі компілятори, спроектовані щоб створити код спеціально для використання в цьому середовищі. Деякі компілятори в цій категорії забезпечують спеціальні конструкції або розширення, щоб дозволити програмістам безпосередньо визначати операції, які будуть виконані паралельно (наприклад, оператори DO FOR ALL у Фортрані, використовуваного на ILLIAC IV, який був багатопроцесорним суперкомп'ютером з SIMD-архітектурой).
Багатопроцесорна обробка SIMD знаходить широке застосування в деяких областях, таких як комп'ютерне моделювання, але малокорисна в універсальному настільному комп'ютері і бізнес-задачах.
Багатопроцесорна обробка MISD
Багатопроцесорна обробка з множинним потоком команд і одиночним потоком даних пропонує головним чином перевагу надмірності, оскільки модулі мультипрограмування виконують
1 2 3 4

Похожие работы