МІНІСТЕРСТВО ОСВІТИ І НАУКИ
РОСІЙСЬКОЇ ФЕДЕРАЦІЇ
ДЕРЖАВНА
бюджетне освітня установа
ВИЩОЇ ОСВІТИ
Вятський державний УНІВЕРСИТЕТ
Факультет прикладної математики та телекомунікацій
Кафедра радіоелектронних засобів
Лабораторні роботи № 1 - 4
Паралельні обчислення
Кіров +2014
Лабораторна робота №1
Паралельні алгоритми матрично- векторного множення
Мета роботи: розробка паралельної програми, яка виконує множення матриць на вектор.
. Реалізація послідовного алгоритму множення матриці на вектор.
Малюнок 1.1 - Завдання розміру матриці
Малюнок 1.2 - Введення даних простим способом
Малюнок 1.3 - Результат виконання матрично- векторного множення
. Проведення обчислювальних експериментів
Обчислення часу виконання алгоритму:
Таблиця 1.1 - Порівняльна таблиця роботи послідовного алгоритму
Розмір матріциЕксперіментальное час, сТеоретіческое час, с100,0000910,000381000,0001770,039810000,0066243,99820000,01815615,99630000,03923335,99440000,06400563,99250000,10299,9960000,139143,98870000,236195,98680000,258255,98490000,309323,982100000,393399,98
. Розробка паралельного алгоритму множення матриці на вектор
Малюнок 1.4 - Друк кількості та рангу процесів
Малюнок 1.5 - Розподіл даних
Малюнок 1.6 - Результат перевірки множення матриці на вектор
. Проведення обчислювальних експериментів
Таблиця 1.2 - Порівняння часу роботи послідовного та паралельного алгоритмів
Розмір об'ектовПоследовательний алгоритм, сПараллельний алгорітм2 процесса4 процесса8 процессовВремя, сускореніеВремя, сускореніеВремя, сускорение100,0000020,0000030,670,0000040,50,0000030,671000,0000450,0000222,0450,0000133,460,0000085,62510000,0039880,002781,43450,0011343,520,0005457,3220000,0166640,0082982,0080,0044783,720,0021167,87530000,0337350,0173841,940,0103143,270,0048067,01940000,0593230,033521,770,0187503,160,0118375,01250000,0946670,0516251,8340,0296023,1980,0157795,9960000,1370,10011,3690,0401653,410,0234065,8570000,1920,10071,910,0558583,440,0275716,9680000,2470,131,90,0742953,330,0354786,9690000,3180,1611,9750,0931283,4150,051376,19100000,3840,2061,8640,1143,370,0620966,184
Висновок:
. У ході лабораторної роботи були розроблені 2 алгоритму обчислення добутку матриці на вектор.
. Виявлено, що послідовний алгоритм виконується швидше, ніж послідовний, і зі збільшенням числа процесів, час обчислення зменшується.
Лабораторна робота №2
Паралельні алгоритми матричного множення
Мета роботи: розробка паралельної програми, яка виконує множення двох матриць.
. Реалізація послідовного алгоритму матричного множення
Рисунок 2.1 - Завдання розміру об'єкта
Малюнок 2.2 - Введення даних простим способом
Малюнок 2.3 - Результат виконання матрично- векторного множення
Малюнок 2.4 - Завдання даних за допомогою випадкового генератора
. Проведення обчислювальних експериментів
Обчислення часу виконання алгоритму:
Таблиця 2.1 - Порівняльна таблиця роботи послідовного алгоритму
Розмір матріциЕксперіментальное час, сТеоретіческое час, с100,0000090,00000651000,0049490,00685000,8530,853100013,4386,827150054,37423,04642000129,9754,6329852500277,843106,713000483,046184,40169
3. Розробка паралельного алгоритму матричного множення
Рисунок 2.5 - Визначення рангу процесу
. Проведення обчислювальних експериментів
Таблиця 2.2 - Порівняння роботи послідовного та паралельного алгоритмів
Розмір об'ектовПоследовательний алгоритм, сПараллельний алгорітм4 процесса9 процессовВремя, сускореніеВремя, сускорение100,0000090,000050,...