Типи структур обчислювальних машин і систем

Достоїнства і недоліки архітектури обчислювальних машин і систем в основному залежать від способу з'єднання компонентів. При найзагальнішому підході можна говорити про два основних типа структур обчислювальних машин і два типа структур обчислювальних систем. Розглянемо їх послідовно.

4.4.1. Структури обчислювальних машин

В даний час майже однакове поширення отримали два способи побудови обчислювальних машин: з безпосередніми зв'язками і на основі шини.

Типовим представником першого способу може служити класична фоннейманівська ЕОМ (див. рис.1.1 і рис. 4.1). У ній між взаємодіючими пристроями (процесор, пам'ять, пристрій вводу/виводу) є безпосередні зв'язки. Особливості зв'язків (число ліній в шинах, пропускна спроможність і т. п.) визначаються виглядом інформації, характером і інтенсивністю обміну. Як перевагу архітектури з безпосередніми зв'язками можна вказати можливість розв'язки «вузьких місць» шляхом поліпшення структури і характеристик лише певних зв'язків, що економічно може бути найбільш вигідним рішенням. В фоннейманівських ЕОМ таким «вузьким місцем» є канал пересилки даних між ЦП і пам'яттю, і «розв'язати» його досить непросто. Крім того, структура ЕОМ з безпосередніми зв'язками погано піддається зміні.

У варіанті із загальною шиною всі пристрої обчислювальної машини підключені до двонаправленої магістральної шини – багатопровідної лінії, що служить єдиним трактом для потоків команд, даних і сигналів управління:

 

 
 

 


 

 

Рис. 4.2.

Наявність загальної шини істотно спрощує реалізацію ЕОМ, дозволяє легко міняти склад і конфігурацію машини. Завдяки цим властивостям шинна архітектура отримала широке поширення в міні- і мікроЕОМ. В той же час, саме з шиною зв'язаний і основний недолік архітектури: у кожен момент передавати інформацію по шині може лише один пристрій. Основне навантаження на шину створюють обміни між процесором і пам'яттю, пов'язані з витяганням з пам'яті команд і даних і записом в пам'ять результатів обчислень. На операції вводу/виводу залишається лише частина пропускної спроможності шини. Практика показує, що навіть при досить швидкій шині для 90% додатків цих залишкових ресурсів зазвичай не вистачає, особливо в разі введення або виведення великих масивів даних.

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

4.4.2. Структури обчислювальних систем

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

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

В цьому випадку в ЕОМ може бути організовані декілька потоків даних і потоків команд, тобто паралельно можуть виконуватися декілька фрагментів одного завдання.

 

 
 

 


Рис. 4.2.

 

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

Різновидом архітектури із загальною пам'яттю є архітектура з паралельним процесором, де декілька АЛп працюють під керуванням одного ПУ (рис. 4.3). В цьому випадку високу швидкодію можна отримати лише на завданнях, в яких однакові обчислювальні операції необхідно виконати одночасно на різних однотипних наборах даних.

 
 

 


Рис. 4.3.

Альтернативний варіант організації — розподілена система, де загальна пам'ять взагалі відсутня, а кожен процесор володіє власною локальною пам'яттю. Часто такі системи об'єднують окремі ЕОМ. Обмін інформацією між складовими системи забезпечується за допомогою комунікаційної мережі шляхом обміну повідомленнями.

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

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

Як приклад можна згадати суперкомпьютер IBM Blu Gene /L: проект початий в 1988 році для вирішення завдань біомолекулярного моделювання. Характеристики після закінчення попередньої частини проекту: 131072 процесори в максимальній конфігурації, продуктивність 360 TFLOPS, споживана потужність 2 Мвт. Тип процесора – IBM Power РС. Збирається з однотипних стійок, сполучених комунікаційною мережею.

У сучасних обчислювальних машинах і системах часто присутні елементи різних типів архітектури. Існують, втім, і такі, які не укладаються в дану класифікацію.

 

Контрольні запитання

 

1. У чому відміна обчислювальної системи від ЕОМ?

2. Які типи обчислювальних машин Ви знаєте? У чому принципова різниця між ними?

3. Назвіть основні типи структур обчислювальних систем і поясните різницю між ними.

4. У чому різниця багатопроцесорної архітектури та архітектури з паралельним процесором?

5. У яких випадках багатомашинна архітектура наводить до зростання продуктивності обчислювальної системи?