ПРАКТИЧЕСКОЕ ЗАНЯТИЕ №7

Тема занятия: Коллективные операции

Цель занятия: Изучить функции для синхронизации процессов (MPI_Barrier), для рассылки информации от одного процесса всем остальным процессам (MPI_Bcast), для сборки распределенного по процессам массива в один массив (MPI_Gather, MPI_Allgather), для распределения массива по процессорам (MPI_Scatter)

Задачи:

1)   Написать программу, используя коммуникационную функцию (MPI_Bcast), реализующую алгоритм передачи данных от 0 процесса всем остальным

2)   Написать программу, используя коммуникационную функцию (MPI_Gather), реализующую алгоритм передачи частей массива от всех процессоров на 0.

3)   Написать программу, используя коммуникационную функцию (MPI_Allgather), реализующую алгоритм передачи частей массива от всех процессоров на все процессора.

4)   Написать программу, используя коммуникационную функцию (MPI_Scatter), реализующую алгоритм передачи частей массива от 0 процессора на все процессора.

5)   Используя изученные функции, написать параллельную программу, реализующую параллельный алгоритм скалярного умножения векторов.

6)    Получить графики пересылок данных между процессорами с помощью утилиты Jumphot.