Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КР КЛАСТЕР. ОС.doc
Скачиваний:
1
Добавлен:
24.08.2019
Размер:
1.23 Mб
Скачать
  1. Ос зі змінною конфігурацією.

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

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

  1. Особливості взаємодії в ос з локальною пам’яттю

Передачу даних із пам'яті процесора Пі в пам'ять процесора Пj, реалізує комплекс апаратних та програмних засобів. Попередньо дані завантажуються в буферну пам'ять процесора П1. Потім Виконується команда відправлення (sender) і дані завантажуються в буферну пам'ять процесора П2. Далі П2 виконує команду отримати (reciver) і дані розміщуються в необхідній області пам'яті П2. Загальний алгоритм взаємодії в ОС з локальною пам’яттю складається з таких кроків:

  • вибірка дані із пам'яті відправника Пвідпр;

  • визначити інформацію про місце її отримання (процесора – отримувача Потр);

  • виконати передачу даних до процесора Потр;

  • розміщення дані в області пам'яті процесора Потр.

В ОС з локальною пам’яттю обміни забезпечуються локальними зв’язками між сусідніми процесорами. Дані, що передаються повинні пройти через послідовність процесорів поки досягніть кінцевого призначення. Тому час пересилання буде значним.

6. Паралелізм та його виміри

Ступінь паралелізму числового алгоритму називається число його операцій, які можуть бути виконані паралельно.

Паралелізм пов’язують також з поняттям зернистості задачі, яка може бути крупною зернистою або мілкою зернистою.

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

Мілкозерністість відповідає можливості паралельного виконання малих підзадач. Наприклад, в задачі додавання двох векторів підзадачами будуть додавання одномірних компонент.

Прискоренням паралельного алгоритму називається відношення:

, де

T – час виконання алгоритму на одному процесорі;

ТРП – час виконання алгоритму на «р» процесорах.

Одна із цілей проектування (розробки) паралельних алгоритмів є досягнення максимального прискорення. В ідеальному випадку SP =P. Це можливо для тривіальних задач. Основними причинами відхилення від максимального прискорення є:

  • відсутність максимального паралелізму в алгоритмі (задачі);

  • незбалансованість навантаження процесорів;

  • обміни, конфлікти пам'яті, час синхронізації.

Більшість алгоритмів задач є суміш фрагментів з різними ступенями паралелізму: максимальним, частковим, мінімальним.

Мінімальний паралелізм відповідає фрагменту алгоритму, коли може бути викоритсний один процесор.

Максимальний паралелізм в алгоритмі не означає максимального прискорення його обчислення, що пов’язано з балансуванням навантаження ОС. Під балансуванням навантаження розуміють такий розподіл завдань між процесорами ОС, яке дозволяє завантажити кожний процесор роботою як можна більше часу. Це називають ще відображенням задачі (алгоритму) на процесори ОС так, щоб досягнути максимального вирівнювання навантаження. Внутрішній алгоритм може мати високу ступінь паралелізму, але балансування навантаження для конкретної ОС може бути важким. Наприклад, при додаванні векторів довжиною 9 при 8 процесорах в ОС має місце невідповідність між паралелізмом задачі та системою для її рішення.

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

Спрощена формула прискорення, яка відображає закон Амдаля-Уера буде:

, де

- доля операцій, які виконуються паралельно; р - число процесорів.

Якщо в задачі половина операцій є паралельними, то =1/2 і прискорення приймає вид:

.

Незалежно від кількості процесорів р в цьому прикладі прискорення завжди менше 2.

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

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