Для студентов МГТУ им. Н.Э.Баумана по предмету Разработка программных системЛабораторная работа №4 (вариант 7)Лабораторная работа №4 (вариант 7)
2021-04-012021-04-01СтудИзба
Лабораторная работа 4: Лабораторная работа №4 (вариант 7) вариант 7
Описание
Текст задания на лабораторную работу
Разработать средствами MPI параллельную программу решения методом Гаусса системы линейных алгебраических уравнений, матрица коэффициентов которой имеет блочно-диагональный с окаймлением вид. Размер диагонального блока, ширина окаймления, количество параллельно выполняющихся процессов - аргументы программы. Программа должна демонстрировать ускорение по сравнению с последовательным вариантом.
Описание структуры программы и реализованных способов взаимодействия потоков управления
Задача распараллеливается следующим образом: корневой процесс производит подготовку данных и распределение блоков, стартует процессы для выполнения прямого хода Гаусса по каждому блоку, включая окаймление и столбец свободных членов. Корневой процесс останавливается у барьера и ожидает завершения прямого хода по всем процессам. После снятия барьера корневой процесс выполняет прямой и обратный ход по строкам нижнего окаймления и обратный ход Гаусса по блокам. В подматрице «а» содержится blockSize строк, содержащих справа фрагмент столбцов окаймления и один из блоков глобальной матрицы. Длина каждой строки – size. Матрица «А» состоит из матриц «а» и строчек окаймления. Обратный ход метода Гаусса для каждого блока идет в своем подпроцессе, обратный ход для окаймления идет в родительском процессе.
Разработать средствами MPI параллельную программу решения методом Гаусса системы линейных алгебраических уравнений, матрица коэффициентов которой имеет блочно-диагональный с окаймлением вид. Размер диагонального блока, ширина окаймления, количество параллельно выполняющихся процессов - аргументы программы. Программа должна демонстрировать ускорение по сравнению с последовательным вариантом.
Описание структуры программы и реализованных способов взаимодействия потоков управления
Задача распараллеливается следующим образом: корневой процесс производит подготовку данных и распределение блоков, стартует процессы для выполнения прямого хода Гаусса по каждому блоку, включая окаймление и столбец свободных членов. Корневой процесс останавливается у барьера и ожидает завершения прямого хода по всем процессам. После снятия барьера корневой процесс выполняет прямой и обратный ход по строкам нижнего окаймления и обратный ход Гаусса по блокам. В подматрице «а» содержится blockSize строк, содержащих справа фрагмент столбцов окаймления и один из блоков глобальной матрицы. Длина каждой строки – size. Матрица «А» состоит из матриц «а» и строчек окаймления. Обратный ход метода Гаусса для каждого блока идет в своем подпроцессе, обратный ход для окаймления идет в родительском процессе.
Характеристики лабораторной работы
Учебное заведение
Семестр
Номер задания
Вариант
Просмотров
144
Покупок
0
Размер
1,11 Mb
Список файлов
Ваше удовлетворение является нашим приоритетом, если вы удовлетворены нами, пожалуйста, оставьте нам 5 ЗВЕЗД и позитивных комментариев. Спасибо большое!