ВІДКРИТИЙ МІЖНАРОДНИЙ УНІВЕРСИТЕТ
РОЗВИТКУ ЛЮДИНИ “УКРАЇНА”
ЛАБОРАТОРНА РОБОТА №1
"РОЗПАРАЛЕЛЮВАННЯ ОБЧИСЛЕНЬ
МЕТОДОМ АЛГЕБРАїЧНИХ ПЕРЕТВОРЕНЬ"
з дисципліни
" Методи паралельних обчислень "
спеціальності
" Програмне забезпечення автоматизованих систем "
Виконав студент 3 курсу
групи ПА-21
______________ Докукін Є.В.
(підпис) (Прізвище І.Б.)
"____"____________ 2005 р.
ЗАРАХОВАНО
Викладач ________________ Доля В.Г.
"____"____________ 200__ р.
Київ
Університет "Україна"
2005
СОДЕРЖАНИЕ
1.2. Решение задачи перемножения двух прямоугольных матриц большой размерности. 3
1.2.3 Листинг текста программы.. 7
1.2.4 Результаты работы программы.. 10
1.2.5 Входные и выходные данные. 11
1. Лабораторная работа №1
"Распараллеливание вычислений
методом алгебраических преобразований"
Цель работы – приобретение практических навыков распараллеливания процесса вычислений при решении вычислительных задач большой размерности с использованием метода алгебраических преобразований.
В связи с большими объемами перерабатываемой информации в сложных вычислительных системах возможным путем решения возникающих в них задач является распараллеливание (распределение) потоков информации и вычислительных процессов между вычислительными средствами (ресурсами) системы. Распараллеливание процессов вычислений многовариантно.
Распараллеливание вычислений может быть организовано на уровнях:
· региональных (территориальных) вычислительных систем;
· вычислительных комплексов (узлов) отдельного территориального региона;
· вычислительных машин отдельного вычислительного комплекса (узла);
· отдельных функциональных устройств ПВМ (процессоров, устройств памяти и др.).
Распараллеливание вычислений может осуществляться путем параллельной организации математических и программных средств вычислений, в том числе:
· метода решения поставленной задачи;
· математической модели исследуемого объекта или процесса;
· алгоритма решения задачи;
· программных средств решения задачи и др.
Основными методами распараллеливания вычислений являются:
· упрощение структуры решаемой задачи с помощью алгебраических преобразований;
· искусственное расщепление (декомпозиция) задачи на ряд подзадач меньшей размерности;
· агрегирование выполняемых операций;
· организация макроалгоритмов процесса вычислений и др.
1.2. Решение задачи перемножения двух прямоугольных матриц большой размерности
1.1. Выбрать свой вариант задания на выполнение работы из Табл.1.1.
По варианту задания № 17, выбраны соответствующие матрицы А и В.
Табл. 1.1. Варианты заданий
№ задания | Размерность | |
Матрица А | Матрица В | |
17 | 7 х 8 | 8 х 5 |
1.2. Используя свой вариант задания и данные табл.1.2, строятся исходные матрицы для выполнения работы.
Входные матрицы А[7,8] и В[8,5] будут иметь вид:
Матрица А[7,8]
Номера строк | Номера столбцов | |||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
1 | а11 | а12 | 0 | 0 | 0 | 0 | 0 | 0 |
2 | а21 | 0 | а23 | а24 | 0 | 0 | 0 | 0 |
3 | 0 | а32 | 0 | а34 | а35 | 0 | 0 | 0 |
4 | 0 | 0 | а43 | 0 | а45 | 0 | 0 | 0 |
5 | 0 | 0 | 0 | а54 | 0 | а56 | 0 | 0 |
6 | 0 | 0 | 0 | 0 | 0 | 0 | а67 | 0 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | а77 | 0 |
Матрица В[8,5]
Номера строк | Номера столбцов | ||||
1 | 2 | 3 | 4 | 5 | |
1 | b11 | b12 | 0 | 0 | 0 |
2 | b21 | 0 | b23 | b24 | 0 |
3 | 0 | b32 | 0 | b34 | b35 |
4 | 0 | 0 | b43 | 0 | b45 |
5 | 0 | 0 | 0 | b54 | 0 |
6 | 0 | 0 | 0 | 0 | 0 |
7 | 0 | 0 | 0 | 0 | 0 |
8 | 0 | 0 | 0 | 0 | 0 |
1.3. Выполняется распараллеливание задачи путем ее алгебраических преобразований, т.е. в данном случае – путем исключения из матриц нулевых строк и столбцов. Строятся матрицы, полученные в результате распараллеливания.
В данном случае матрица А[7,8] содержит один (восьмой) нулевой столбец, а матрица В[8,5] имеет три (шестая, седьмая и восьмая) нулевых строки, часть из которые в данном случае можно исключить. При этом следует учесть, что после исключения нулевых строк и столбцов, число элементов в каждой строке матрицы А должно быть равно числу элементов в каждом столбце матрицы В. Иначе матрицы нельзя будет перемножить.
В данном случае можно исключить восьмой столбец матрицы А и восьмую строку матрицы B. Строки 6 и 7 матрицы В исключить нельзя.
В результате матрицы А и В преобразуются к виду:
Матрица А[7,7]
Номера строк | Номера столбцов | ||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | |
1 | а11 | а12 | 0 | 0 | 0 | 0 | 0 |
2 | а21 | 0 | а23 | а24 | 0 | 0 | 0 |
3 | 0 | а32 | 0 | а34 | а35 | 0 | 0 |
4 | 0 | 0 | а43 | 0 | а45 | 0 | 0 |
5 | 0 | 0 | 0 | а54 | 0 | а56 | 0 |
6 | 0 | 0 | 0 | 0 | 0 | 0 | а67 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | а77 |
Матрица В[7,5]