Класифікація Шора. Класифікація Фліна 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Класифікація Шора. Класифікація Фліна



Класифікація Шора

Одна з перших класифікацій комп’ютерних систем була запропонована Д. Шором на початку 70-х років. Вона цікава тим, що є спробою виділення типових способів компонування комп’ютерних систем на основі фіксованого числа базових блоків: пристрою^ керування, арифметико-логічного пристрою, пам’яті команд і пам’яті даних. Додатково" передбачається, що вибірка з пам’яті даних може здійснюватися словами, тобто вибира-' ються всі розряди одного слова, і/або бітовим шаром - по одному розряду з однієї і тієї ж: позиції кожного слова (іноді ці два способи називають горизонтальною і вертикальною

вибірками відповідно). Звичайно ж, при аналізі даної класифікації треба робити знижку на час її появи, оскільки передбачити велику різноманітність паралельних систем тепе­рішнього часу тоді було у принципі неможливо. Отже, згідно з класифікацією Д. Шора, всі комп’ютери розбиваються на шість класів, перший з яких дістав назву машини І, другий - машини II, і т. д.

На поданих нижче рисунках позначено: ПІ - пам’ять команд (інструкцій), ПК - при­стрій керування, АЛП - арифметико-логічний пристрій, ПД - пам’ять даних.

Машина І - це комп’ютерна система, яка містить пристрій керування, арифметико- логічний пристрій, пам’ять команд і пам’ять даних із послівною вибіркою (рис. 12.8).

Рис. 12.8. Машина І

 

Зчитування даних здійснюється вибіркою всіх розрядів деякого слова для їх пара­лельної обробки в арифметико-логічному пристрої. Склад АЛП спеціально не вказуєть­ся, що допускає наявність декількох функціональних пристроїв, в тому числі конвеєр­ного типу. За цими міркуваннями до даного класу потрапляють як класичні послідовні машини (ІВМ 701, РБР-П, УАХ 11/780), так і конвеєрні скалярні (СБС 7600) і векторно- конвеєрні (СКАУ-І).

Якщо в машині І здійснювати вибірку не по словах, а по одному розряду з усіх слів, то одержимо машину II (рис. 12.9). Слова в пам’яті даних, як і раніше, розташовуються горизонтально, але доступ до них здійснюється інакше. Якщо в машині І відбувається послідовна обробка слів при паралельній обробці розрядів, то в машині II - послідовна обробка бітових шарів при паралельній обробці множини слів.

Рис. 12.9. Машина II

 

Структура машини II лежить в основі асоціативних комп’ютерів (наприклад, так по­будовано центральний процесор машини ЗТАКАМ), причому фактично такі комп’ютери мають в складі арифметико-логічного пристрою множину порівняно простих операцій них пристроїв порозрядної обробки даних. Іншим прикладом служить матрична систе­ма ICL DAP, яка може одночасно обробляти по одному розряду з 4096 слів.

Якщо об’єднати принципи побудови машин І і II, то одержимо машину III (рис. 12.10). Ця машина має два арифметико-логічні пристрої - горизонтальний і вертикальний, а також

модифіковану пам’ять даних, яка забезпечує доступ як до слів, так і до бітових шарів. Вперше ідею побудови таких систем у 1960 році висунув У Шуман, що називав їх ортого­нальними (якщо пам’ять представляти як матрицю слів, то доступ до даних здійснюєть­ся в напрямі, “ортогональному” традиційному - не по словах (рядках), а по бітових шарах (стовпцях)). У принципі, як машину STARAN, так і ICL DAP можна запрограмувати на ви­конання функцій машини III, але оскільки вони не мають окремих АЛП для обробки слів і бітових шарів, віднести їх до даного класу не можна. Повноправними представниками машин класу III є обчислювальні системи сімейства OMEN-60 фірми Sanders Associates, побудовані в прямій відповідності до концепції ортогональної машини.

Рис. 12.10. Машина III

 

Якщо в машині І збільшити кількість пар арифметико-логічний пристрій <==> пам’ять даних (іноді цю пару називають процесорним елементом), то одержимо машину

IV (рис, 12.11). Єдиний пристрій керування видає команду за командою відразу всім процесорним елементам. З одного боку, відсутність з’єднань між процесорними еле­ментами робить подальше нарощування їх числа відносно простим, але з іншого боку, сильно обмежує застосовність машин цього класу. Таку структуру має обчислювальна система РЕРЕ, яка об’єднує 288 процесорних елементів


 

Якщо ввести безпосередні лінійні зв’язки між сусідніми процесорними елементами машини IV, то одержимо структуру машини V (рис. 12.12). Будь-який процесорний еле­мент тепер може звертатися до даних як у своїй пам’яті, так і в пам’яті безпосередніх сусідів. Подібна структура характерна, наприклад, для класичної матричної багатопро­цесорної системи ІІХІАС IV.

 

Рис. 12.12. Машина V

 

Відмітимо, що у всіх машинах з 1-ї по У-у дотримана концепція розділення пам’яті даних і арифметико-логічних пристроїв, припускаючи наявність шини даних або якого- небудь комутуючого елемента між ними. Машина VI, названа матрицею з функціональ­ною пам’яттю (або пам’яттю з вбудованою логікою), є іншим підходом, що передбачає розподіл логіки процесора по всьому запам’ятовуючому пристрою (рис. 12.13). Прикла­дом можуть служити як прості асоціативні запам’ятовуючі пристрої, так і складні асоці­ативні процесори.

 

Класифікація Фліна

Одну з перших практично значимих класифікацій паралельних комп’ютерних систем подав у 1966 році співробітник фірми IBM Майкл Флін, який зараз є професором Стен- фордського університету (СІЛА). Його класифікація базується на оцінці потоку інформа­ції, яка поділена на потік даних між основною пам’яттю та процесором, та потік команд, які виконує процесор. При цьому потік даних та команд може бути як одиничним, так і множинним. Згідно з М. Фліном, усі комп’ютерні системи поділяють наступним чином:

• ОКОД - комп’ютерні системи з одиничним потоком команд та одиничним по­током даних (SISD - Single Instruction stream Single Data stream).

• МКОД - комп’ютерні системи з множинним потоком команд та одиничним по­током даних (MISD - Multiply Instruction stream Single Data stream).

• ОКМД - комп’ютерні системи з одиничним потоком команд та множинним по-з током даних (SIMD - Single Instruction stream Multiply Data stream).:

• МКМД - комп’ютерні системи з множинним потоком команд та множинним по-1 током даних (MIMD - Multiply Instruction stream Multiply Data stream).

Розглянемо запропоновану M. Фліном класифікацію детальніше. На поданих нижче рисунках позначено: ПК - пристрій керування, ПР - процесор, ПД - пам’ять даних.

До класу комп’ютерних систем з одиничним потоком команд та одиничним потоком даних належить, зокрема, комп’ютер з архітектурою Джона фон Неймана, яким, напри­клад, є розповсюджений персональний комп’ютер. Структура цієї системи представлена на рис. 12.14а. Організація роботи комп’ютерних систем цього класу була розглянута в попередніх розділах книги.

 

 

Структура комп’ютерної системи з множинним потоком команд та одиничним пото­ком даних показана на рис. 12.14b. Комерційні універсальні комп’ютерні системи цього типу на даний час невідомі, проте вони можуть з’явитися у майбутньому. До цього типу систем з деякими умовностями можна віднести спеціалізовані потокові процесори, зо­крема систолічні, які використовують, наприклад, при обробці зображень.

В комп’ютерній системі з одиничним потоком команд та множинним потоком даних (рис. 12.14 с) одночасно обробляється велика кількість даних. До цього класу, зокрема, належать раніше розглянуті векторні процесори. До комп’ютерних систем з одиничним потоком команд та множинним потоком даних можна віднести також апаратну підсис­тему процесорів Pentium, яка реалізовує технологію ММХ опрацювання даних для гра­фічної операційної системи Windows.

Характерним прикладом комп’ютерної системи з одиничним потоком команд та мно­жинним потоком даних може служити система, яка складається з двох частин: зовніш­нього комп’ютера з архітектурою Джона фон Неймана, який виконує роль пристрою керування, і масиву ідентичних синхронізованих елементарних процесорів, здатних од­ночасно виконувати ту ж саму дію над різними даними. Кожен процесор у масиві має місцеву пам’ять невеликої ємності, де зберігаються дані, які обробляються паралельно.

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

У комп’ютерній системі з множинним потоком команд та множинним потоком да­них кожен процесор оперує із своїм потоком команд та своїм потоком даних (рис. 12. - 4сі). Як правило, окремі процесори багатопроцесорної системи є серійними пристроями, що дозволяє значно зменшити вартість проекту. У класі МКМД треба відрізняти сильно зв’язані системи, власне багатопроцесорні системи, від мереж комп’ютерів, тобто слабо зв’язаних систем; тобто багатопроцесорні системи та комп’ютерні мережі потрапляють до різних підкласів класу МІІУГО.

В 1978 році Д. Куком було запропоновано розширення класифікації Фліна. У сво­їй класифікації Д. Кук розділив потоки команд та даних на скалярні та векторні пото­ки. Комбінація цих потоків приводить в підсумку до 16 типів архітектури паралельних комп’ютерних систем.

112. Типи архітектур систем ОКМД. Типи архітектур систем МКМД

До комп’ютерних систем класу ОКМД належать різні типи систем, які під керуван­ням одиничного потоку команд обробляють потоки даних. В першу чергу до цих систем потрібно віднести векторні та матричні комп’ютерні системи. Перші з них були де­тально розглянуті раніше. Призначення матричних комп’ютерних систем багато в чому схоже з призначенням векторних комп’ютерних систем - обробка великих ма­сивів даних. В основі матричних комп’ютерних систем лежить матричний процесор, що складається з регулярного масиву процесорних елементів (ПЕ). Організація систем по­дібного типу на перший погляд достатньо проста. Вони мають пристрій керування, що генерує потік команд і велике число ПЕ, що працюють паралельно і оброблюють кожен свій потік даних. Проте на практиці, щоб забезпечити достатню ефективність системи при вирішенні широкого кола завдань, необхідно організувати зв’язки між процесорни­ми елементами так, щоб якнайповніше завантажити 'їх роботою. Саме характер зв’язків між ПЕ і визначає різницю у властивостях системи.

Між матричними і векторними комп’ютерними системами є істотна різниця.

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

Матричний процесор інтегрує безліч ідентичних процесорних елементів, логічно об’єднаних у матрицю і працюючих в стилі ОКМД. Не так істотно, як конструктивно реалізована матриця процесорних елементів - на одному кристалі чи на декількох. Важ­ливий сам принцип - ПЕ логічно скомпоновані в матрицю і працюють синхронно, тобто присутній тільки один потік команд для всіх.

Є дві головні конфігурації, які були використані в матричних комп’ютерних сис­темах класу ОКМД. В першій схемі кожен процесор Р має власну локальну пам’ять М (рис. 12.15).

Процесори можуть зв’язатися один з одним через комунікаційну мережу. Якщо ко­мунікаційна мережа не забезпечує прямого зв’язку між заданою парою процесорів, то згодом ця пара може обмінятися даними через проміжний процесор. Таку схему зв’язку було використано в комп’ютері ILLIAC IV. Комунікаційна мережа в ILLIAC IV дозволяла кожному процесору зв’язуватися безпосередньо з чотирма сусідніми процесорами. В! матриці із 8x8 процесорів кожний i-й процесор міг контактувати безпосередньо з (і-1)-

У другій схемі процесори і модулі пам’яті зв’язуються між собою через комунікаційну мережу (рис. 12.16). Два процесори можуть передати дані один одному через проміжний модуль пам’яті або, можливо, через проміжний процесор. За такою схемою, наприклад, побудовано процесор BSP фірми Burrough

Типи архітектур систем МКМД

Комп’ютерні системи класу МКМД складаються з багатьох процесорів та багатьох модулів пам’яті, з’єднаних за допомогою комунікаційної мережі. Вони можуть бути по­ділені на дві великі групи: зі спільною пам’яттю та з передачею повідомлень. На рис. 12.17 а та Ь показано загальну структуру цих двох груп комп’ютерних систем.


Рис. 12.17. Загальна структура комп'ютерних систем зі спільною пам’яттю а та з передачею повідомлень b

В першій групі процесори обмінюються інформацією через їх спільну пам’ять, при­чому кожний процесор має рівні можливості читати та записувати дані до пам’яті, а також однакову швидкість доступу до пам’яті, тому їх часто називають симетричними багатопроцесорними системами. Комерційними прикладами комп’ютерних систем пер­шої групи є багатопроцесорні сервери фірм Sequent Computer’s Balance and Symmetry, Sun Microsystems та Silicon Graphics Inc.

У другій групі процесори обмінюються інформацією через комунікаційну мережу. В комп’ютерній системі з передачею повідомлень (також 'їх називають системами з роз­поділеною пам’яттю) зазвичай наявна локальна пам’ять і процесор у кожному вузлі ко­мунікаційної мережі. Тут відсутня спільна пам’ять, тому необхідно переміщувати дані з однієї локальної пам’яті до іншої за допомогою механізму передачі повідомлень. Це, зазвичай, робиться шляхом посилання-отримання кількох команд, які повинні бути вписані в прикладне програмне забезпечення. Комерційними прикладами систем пере­дачі повідомлень є системи nCUBE, iPSC/2 і різні системи, базовані на трансп’ютерах. Ці системи кінець кінцем поступилися системам глобальної мережі Internet, в якій вузли є або серверами, або персональними комп’ютерами.

Архітектуру з розподіленою пам’яттю довелося використовувати із-за переходу до все більших систем. Потрібно відзначити, що програмування в системі зі спільною пам’яттю є простішим, а в системах передачі повідомлень забезпечується масштабова- ність. Тому з’явились комбіновані системи з розподіленою та з спільною пам’яттю, такі як SGI 0rigin2000, та інші.

 

 



Поделиться:


Последнее изменение этой страницы: 2016-08-01; просмотров: 611; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.200.136 (0.018 с.)