Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kompyuterni_sistemi_lektsiyi_1_1.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
242 Кб
Скачать
☆

13 Машинні потоки команд (Data Flow)

Більшість сучасних комп’ютерів об’єднує загальний принцип функціонування, який базується на потоці управління командами (Control Flow), яка має ряд недоліків:

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

  2. Складність створення паралельних систем.

Певною протилежністю Control Flow є так звані машини потоків даних Data Flow. В даній архітектурі відсутнє поняття послідовність інструкцій, відсутня ОП в звичному нам розумінні, немає вказівника інструкцій. Програма в потоковій машині — це направлений граф, кожен вузол якого представляє собою операнд або оператор, а гілки — залежність між вузлами по даних. Наприклад, розрахунок пошуку коренів квадратних рівнянь наступний:

В потокових машинах операція виконується тільки тоді, коли операнди для неї будуть готові. Тому ключовим моментом є процес виконання програми по готовності даних. В потокових машинах дані зберігається в вигляді токенів (token). Токен — це структура, яка містить безпосереднє значення, що передається, та мітку, що є вказівником вузла призначення. Найпростіша потокова машина складається з 2-х пристроїв: виконання модуля та пристроїв співставлення.

Виконуваний пристрій призначений для виконання інструкцій і формування токенів з результатів операції. Готовність вхідних даних вузла визначається по наявності набору токенів з однаковими мітками.

Для пошуку таких токенів призначений пристрій співставлення, яка зазвичай реалізується на асоціативній пам’яті.

«Чисті» потокові архітектури мають ряд слабких місць.

  1. На послідовних ділянках програми потокові машини показують різке погіршення швидкодії;

  2. Завантаженість виконавчих пристроїв далека від максимально можливої. Більша частина машинного часу використовують для пошуку відповідних токенів;

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

14 Кластерні системи

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

Комп’ютери в кластері називають вузлами. Самі вузли з’єднуються між собою певним комунікаційним середовищем (локальна мережа). Принциповою відмінністю кластер них систем від багатопроцесорних систем є той факт, що кожен вузол — це окремий комп’ютер зі своєю власною ОС, з власним адресним простором. Кластер ефективно використовувати для крупно паралельних задач, тобто таких, які можна розпаралелити на досить великі підзадачі.

Типи кластерів:

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

  2. З розподілення балансу навантаження (Balancing Loading). Процеси системи розділяються між всіма вузлами кластера рівномірно. Розпаралелення відбувається на рівні потоків. Зазвичай дані системи комбінуються з першим типом.

  3. Обчислювальний кластер. Основне їхнє призначення — проведення складних математичних обрахунків. Найпопулярнішою системою є система на базі MPI (HPC).

  4. GRID-системи. Такі системи в принципі не прийнято вважати кластери, але вони в значній мірі подібні до HPC кластерів. Вузли GRID-системи можуть бути географічно розкидані по всій земній кулі. І основною відмінністю є низька доступність кожного вузла, тобто неможливо гарантувати роботу вузла конкретного вузла в певний момент часу. Нестабільна конфігурація компенсувати великим числом самих вузлів.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]