Page 37 - 6571
P. 37
4. На чому базується вибір підходу для розподілу (декомпо-
зиції) нетривіальних задач?
5. З яких основних етапів складається алгоритм розпаралелю-
вання задач?
6. Для чого використовується закон Джина Амдала та яке йо-
го основне формулювання?
7. Як згідно закону Джина Амдала визначити зростання про-
дуктивності програми?
8. Назвіть основні моделі паралельного програмування.
9. Які існують програмні підходи до розробки паралельних
програм?
ЛЕКЦІЯ 5
ТЕХНОЛОГІЇ ПАРАЛЕЛЬНОГО ПРОГРАМУВАННЯ
5.1 Апаратний та програмний паралелізм
Розглянемо приклад додавання векторів. Спочатку продемон-
струємо послідовний алгоритм додавання двох векторів (рис. 5.1):
Рисунок 5.1 – Послідовний алгоритм додавання векторів
У даному алгоритмі один процес виконує послідовне поеле-
ментне додавання двох векторів. При цьому, значення наступного
елементу кінцевого вектору отримується після того як було обчи-
слено попереднє його значення.
Поєднання SPMD із розбиттям в циклі дозволяє перемножи-
ти копії програми виконуючи розрахунки над різними даними
паралельно. В представленому прикладі додавання векторів,
36