Professional Documents
Culture Documents
1.9 Моделювання паралельних обчислень
1.9 Моделювання паралельних обчислень
обчислень
Задачі моделювання
Оцінювання ефективності паралельних
обчислень застосовується у таких формах:
1) Оцінювання прискорення процесу
обчислень
2) Оцінювання максимально можливого
прискорення процесу обчислень
Модель обчислень
у вигляді графу « операції-операнди»
Припущення:
• усі обчислювальні операції виконуються з
однаковою з часовою затримкою рівною 1,
• передача даних між обчислювальними
пристроями здійснюється миттєво
(!вірно, якщо використовується спільна модель
пам’яті в розподіленій системи)
Структура графу
Вершини графу представляють операції
алгоритму.
Дуга між вершинами графу існує, якщо
операція – кінець дуги використовує
результат обчислень операції – старт дуги.
Приклад: модель алгоритму обчислення
площі прямокутника
Визначення часу виконання паралельних
обчислень
•• Мінімально
можливий час виконання паралельного
алгоритму визначається довжиною максимального
шляху обчислювальної схеми алгоритму:
,
де - час виконання паралельного алгоритму на паракомп’ютері (з
нескінченно великою кількістю процесорів)
• Мінімально можливий час виконання паралельного
алгоритму, за умови, що кількість входів у кожну
вершину графу не перевищує 2, обмежений знизу
величиною
Окремий випадок: .
• Для будь-якої кількості використовуваних
процесорів виконується таке обмеження часу
виконання паралельного алгоритму:
;
Показники ефективності паралельного
алгоритму
•• Прискорення,
одержуване при використанні p
процесорів для реалізації паралельного алгоритму
складності n , оцінюється величиною:
•Сума
S= послідовно розраховується у такі
кроки: S=0, S=S+ Схема цих обчислень має
такий вид і не може бути розпаралелена (!!!):
Приклад: алгоритм обчислення суми
𝑛
𝑇 𝑝 = log2 𝑛 𝑝 = 2
Ефективність алгоритму обчислення суми
•Кількість
операцій сумування:
Зауваження:
Модифікована каскадна схема
паралельного обчислення сум
, кількість груп
= -1+ = 2 -1-
𝑛
𝑇 𝑝= −1 +𝑙𝑜𝑔 2 𝑝
Ефективність модифікованого каскадного
сумування
•
Маємо (!!!):
Порівняння ефективності звичайного та
модифікованого каскадних алгоритмів
1.2
0.8
0.6 каскадний
каскадний модифікований
0.4
0.2
0
1 2 3 4 5 6 7 8 9 10 11
Виведення закону Амдала
• 𝑇 1 𝑓 𝑇 1+ (1 − 𝑓 ) 𝑇 1 1
𝑆 𝑝= ≤ =
𝑇𝑝 (1 − 𝑓 ) 𝑇 1 ( 1− 𝑓 )
𝑓 𝑇1+ 𝑓+
Послідовна 𝑝
Паралельна 𝑝
частина коду частина коду
Максимально досяжний паралелизм
• Закон
Амдала
,
де – частка послідовних обчислень в алгоритмі.
Наприклад, для каскадної схеми , тому
прискорення обмежене величиною