( ПРВ ) Параллельные и распределенные вычисления_Лабораторная работа 5

Раздел
Программирование
Просмотров
297
Покупок
0
Антиплагиат
70% Антиплагиат.РУ (модуль - Интернет Free)eTXTАнтиплагиат.ВУЗ
Размещена
24 Ноя 2022 в 12:24
ВУЗ
ДонГТУ
Курс
3 курс
Стоимость
120 ₽
Демо-файлы   
4
png
Скриншот 24.11.22_13.46.49 Скриншот 24.11.22_13.46.49
13 Кбайт 13 Кбайт
png
Скриншот 24.11.22_13.46.37 Скриншот 24.11.22_13.46.37
17.8 Кбайт 17.8 Кбайт
png
Скриншот 24.11.22_13.46.11 Скриншот 24.11.22_13.46.11
22.3 Кбайт 22.3 Кбайт
png
lb5 lb5
310.7 Кбайт 310.7 Кбайт
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
rar
lab5_( ПРВ ) Параллельные и распределенные вычисления
704 Кбайт 120 ₽
Описание

Тема: Производные типы в MPI

Цель: Научиться использовать механизмы создания и работы с производными типами данных

Оглавление

Задание к лабораторной работе

 

В заданиях лабораторной работы предлагается дописать фрагменты программ на языке C, написанные с использованием функций MPI. Пропущенные фрагменты обозначены соответствующим комментарием.

Задание 1

В программе на языке C (lab51.c) имеется двумерный массив М, представляющий собой квадратную матрицу размерность матрицы зависит от числа работающих процессов. Используя приведенный шаблон, в соответствии с приведенными заданиями и рекомендациями:

Задание 1.1 Создать производный тип данных mCol, описывающий столбцы матрицы M (использовать конструктор типа MPI_Type_vector). Зарегистрировать производный тип mCol.

Задание 1.2 Создать производный тип данных mRow, описывающий строки матрицы M (использовать конструктор типа MPI_Type_contiguous). Зарегистрировать производный тип mRow.

Задание 1.3 Выполнить транспонирование матрицы в главном процессе, для чего:

 a) разослать столбцы матрицы с использованием нового производного типа mCol самому себе (использовать MPI_Send) ;

b) принять разосланные столбцы от самого себя и перезаписать матрицу M так, чтобы получилась транспонированная матрица (использовать MPI_Recv)

Задание 1.4 Разослать строки матрицы всем процессам, включая самого себя с использованием производного типа данных mRow (использовать MPI_Send)

Задание 1.5 Принять строку матрицы от главного процесса в массив m (использовать MPI_Recv)

Задание 1.6 Расчитать локальную сумму элементов массива m, результат записать в переменную sum

Задание 1.7 С помощью MPI_Gather, выполнить "склейку" локальных сумм (переменная sum) из каждого процесса в массив sR в главном процессе

Задание 1.8 С помощью вызова MPI_Reduce, посчитать сумму элементов матрицы по столбцам, для чего необходимо:

 a) применить операцию редукции к массиву m ;

 b) результат записать в массив sC c) операция приведения - MPI_SUM

Задание 1.9 Уничтожить созданные производные типы данных

Задание 2 В программе на языке C (lab52.c) необходимо выполнить отправку структуры данных путем создания нового производного типа. Изучить исходный код приложения и внести необходимые правки для его корректной работы. Аргументы функций MPI_Type_struct и MPI_Type_commit, а также некоторые другие фрагменты пропущены. Добавить эти фрагменты. Откомпилировать и запустить программу.

Задание 3 Модифицируйте программу из предыдущего задания таким образом что бы структура данных передавалась с помощью упаковки и распаковки данных, программу сохраните под именем lab53.c.

Список литературы

Литература

Эндрю Таненбаум, Мартин ван Стеен Распределенные системы. Принципы и парадигмы = Andrew S. Tanenbaum, Maarten van Steen. "Destributed systems. Principles and paradigms. — Санкт-Петербург: Питер, 2003. — 877 с. — (Классика computer science). — ISBN 5-272-00053-6

С. Н. Андрианов, А. Б. Дегтярев 1 // ПАРАЛЛЕЛЬНЫЕ И РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ. — С.-Петерб.: Издательство С.-Петербургского университета, 2007. — 61 с.

А. А. Букатов, В. Н. Дацюк, А. И. Жегуло Программирование многопроцессорных вычислительных систем. — Ростов-на-Дону: ООО «ЦВВР», 2003. — 208 с. — ISBN 5-94153-062-5

Эндрюс Г.Р. Основы многопоточного, параллельного и распределенного программирования. Пер.с англ. — М.: Издательский дом «Вильямс», 2003.

Миллер Р., Боксер Л. Последовательные и параллельные алгоритмы. Пер. с англ. — М.: БИНОМ. Лаборатория знаний, 2006.

Богачёв К.Ю. Основы параллельного программирования. — М.: БИНОМ. Лаборатория знаний, 2003.

Вам подходит эта работа?
Похожие работы
Основы программирования
Тест Тест
13 Июл в 00:31
3 +3
0 покупок
Основы программирования
Лабораторная работа Лабораторная
9 Июл в 09:33
12 +1
0 покупок
Основы программирования
Лабораторная работа Лабораторная
9 Июл в 09:30
15 +2
0 покупок
Основы программирования
Лабораторная работа Лабораторная
8 Июл в 16:23
11 +2
0 покупок
Основы программирования
Курсовая работа Курсовая
8 Июл в 16:22
19 +3
0 покупок
Другие работы автора
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:48
453
0 покупок
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:46
371
0 покупок
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:44
378 +1
0 покупок
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:40
400 +2
1 покупка
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:38
353 +1
0 покупок
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:36
542
0 покупок
Организация ЭВМ
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:33
330
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:30
342 +2
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:26
291 +2
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:19
346 +3
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:16
237 +1
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:13
305 +4
0 покупок
Основы программирования
Лабораторная работа Лабораторная
24 Ноя 2022 в 12:09
276 +2
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:53
2 739
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:50
13 247
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:46
264 +1
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:43
1 852
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:39
297
0 покупок
Компьютерные сети и системы
Лабораторная работа Лабораторная
24 Ноя 2022 в 09:35
340
0 покупок
Электротехника
Контрольная работа Контрольная
23 Ноя 2022 в 16:52
333
0 покупок
Темы журнала
Показать ещё
Прямой эфир