Смекни!
smekni.com

Всвязи с большими объемами перерабатываемой информации в сложных вычислительных системах возможным путем решения возникающих в них задач является распараллеливание (стр. 1 из 3)

ВІДКРИТИЙ МІЖНАРОДНИЙ УНІВЕРСИТЕТ

РОЗВИТКУ ЛЮДИНИ “УКРАЇНА”

ЛАБОРАТОРНА РОБОТА №1

"РОЗПАРАЛЕЛЮВАННЯ ОБЧИСЛЕНЬ
МЕТОДОМ АЛГЕБРАїЧНИХ ПЕРЕТВОРЕНЬ"

з дисципліни

" Методи паралельних обчислень "

спеціальності

" Програмне забезпечення автоматизованих систем "

Виконав студент 3 курсу

групи ПА-21

______________ Докукін Є.В.

(підпис) (Прізвище І.Б.)

"____"____________ 2005 р.

ЗАРАХОВАНО

Викладач ________________ Доля В.Г.

"____"____________ 200__ р.

Київ

Університет "Україна"

2005

СОДЕРЖАНИЕ

1.1. Реферат. 3

1.2. Решение задачи перемножения двух прямоугольных матриц большой размерности. 3

1.2.1 Постановка задачи. 3

1.2.2 Блок-схема алгоритма. 6

1.2.3 Листинг текста программы.. 7

1.2.4 Результаты работы программы.. 10

1.2.5 Входные и выходные данные. 11

1.3. Литература. 12

1. Лабораторная работа №1

"Распараллеливание вычислений
методом алгебраических преобразований"

Цель работы – приобретение практических навыков распараллеливания процесса вычислений при решении вычислительных задач большой размерности с использованием метода алгебраических преобразований.

1.1. Реферат

В связи с большими объемами перерабатываемой информации в сложных вычислительных системах возможным путем решения возникающих в них задач является распараллеливание (распределение) потоков информации и вычислительных процессов между вычислительными средствами (ресурсами) системы. Распараллеливание процессов вычислений многовариантно.

Распараллеливание вычислений может быть организовано на уровнях:

· региональных (территориальных) вычислительных систем;

· вычислительных комплексов (узлов) отдельного территориального региона;

· вычислительных машин отдельного вычислительного комплекса (узла);

· отдельных функциональных устройств ПВМ (процессоров, устройств памяти и др.).

Распараллеливание вычислений может осуществляться путем параллельной организации математических и программных средств вычислений, в том числе:

· метода решения поставленной задачи;

· математической модели исследуемого объекта или процесса;

· алгоритма решения задачи;

· программных средств решения задачи и др.

Основными методами распараллеливания вычислений являются:

· упрощение структуры решаемой задачи с помощью алгебраических преобразований;

· искусственное расщепление (декомпозиция) задачи на ряд подзадач меньшей размерности;

· агрегирование выполняемых операций;

· организация макроалгоритмов процесса вычислений и др.

1.2. Решение задачи перемножения двух прямоугольных матриц большой размерности

1.2.1 Постановка задачи

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]