🗊Презентация Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения

Нажмите для полного просмотра!
Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №1Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №2Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №3Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №4Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №5Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №6Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №7Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №8Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №9Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №10Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №11Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №12Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №13Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №14Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №15Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №16Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №17Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №18Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №19Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №20Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №21Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №22Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №23Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №24Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №25Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №26Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №27Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №28Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №29Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №30Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №31Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №32Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №33Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №34Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №35Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №36Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №37Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №38Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №39Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения, слайд №40

Содержание

Вы можете ознакомиться и скачать презентацию на тему Лабораторная работа. Параллельные алгоритмы матрично-векторного умножения. Доклад-сообщение содержит 40 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Лабораторная работа 1.
                Параллельные алгоритмы 
          матрично-векторного умножения     
Образовательный комплекс
Введение в методы параллельного программирования
Описание слайда:
Лабораторная работа 1. Параллельные алгоритмы матрично-векторного умножения Образовательный комплекс Введение в методы параллельного программирования

Слайд 2





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

Слайд 3





Упражнение 1: Постановка задачи…
Описание слайда:
Упражнение 1: Постановка задачи…

Слайд 4





Упражнение 1: Постановка задачи
Для выполнения матрично-векторного умножения необходимо выполнить m операций вычисления скалярного произведения
Трудоемкость вычислений имеет порядок O(mn)
Описание слайда:
Упражнение 1: Постановка задачи Для выполнения матрично-векторного умножения необходимо выполнить m операций вычисления скалярного произведения Трудоемкость вычислений имеет порядок O(mn)

Слайд 5





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Поэтапная разработка последовательного алгоритма:
Задание 1 – Создание проекта MatrixVectorMult
Задание 2 – Определение размеров объектов и ввод данных
Задание 3 – Завершение процесса вычислений
Задание 4 – Реализация умножения матрицы на вектор
Задание 5 – Проведение вычислительных
                     экспериментов
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Поэтапная разработка последовательного алгоритма: Задание 1 – Создание проекта MatrixVectorMult Задание 2 – Определение размеров объектов и ввод данных Задание 3 – Завершение процесса вычислений Задание 4 – Реализация умножения матрицы на вектор Задание 5 – Проведение вычислительных экспериментов

Слайд 6





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 1 – Создание проекта MatrixVectorMult:
Переменные, которые будут использоваться в программе:
Вывод начального сообщения и ожидание нажатия любой клавиши перед завершением выполнения приложения:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 1 – Создание проекта MatrixVectorMult: Переменные, которые будут использоваться в программе: Вывод начального сообщения и ожидание нажатия любой клавиши перед завершением выполнения приложения:

Слайд 7





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 2 – Определение размеров объектов и ввод данных:…
Для задания исходных данных реализуем функцию ProcessInitialization: 
определяет размеры матрицы и вектора, 
выделяет память для всех объектов, участвующих в умножении (pMatrix, pVector и pResult),
задает значения элементов исходных матрицы и вектора
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 2 – Определение размеров объектов и ввод данных:… Для задания исходных данных реализуем функцию ProcessInitialization: определяет размеры матрицы и вектора, выделяет память для всех объектов, участвующих в умножении (pMatrix, pVector и pResult), задает значения элементов исходных матрицы и вектора

Слайд 8





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 2 – Определение размеров объектов и ввод данных:…
Определение значений элементов исходных матрицы и вектора по шаблону:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 2 – Определение размеров объектов и ввод данных:… Определение значений элементов исходных матрицы и вектора по шаблону:

Слайд 9





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 2 – Определение размеров объектов и ввод данных:…
Функция для простого определения значений элементов исходных матрицы и вектора: 
Функция для задания значений элементов матрицы и вектора при помощи датчика случайных чисел:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 2 – Определение размеров объектов и ввод данных:… Функция для простого определения значений элементов исходных матрицы и вектора: Функция для задания значений элементов матрицы и вектора при помощи датчика случайных чисел:

Слайд 10





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 2 – Определение размеров объектов и ввод данных:…
Для контроля правильности задания исходных данных необходимо разработать:
Функцию для форматированной печати матрицы PrintMatrix (входные параметры - матрица pMatrix, количество строк RowCount и количество столбцов ColCount),
Функцию для форматированной печати вектора PrintVector  (входные параметры - вектор pVector и количество элементов в векторе Size)
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 2 – Определение размеров объектов и ввод данных:… Для контроля правильности задания исходных данных необходимо разработать: Функцию для форматированной печати матрицы PrintMatrix (входные параметры - матрица pMatrix, количество строк RowCount и количество столбцов ColCount), Функцию для форматированной печати вектора PrintVector (входные параметры - вектор pVector и количество элементов в векторе Size)

Слайд 11





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 2 – Определение размеров объектов и ввод данных:
Контроль правильности выполнения этапа задания исходных данных:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 2 – Определение размеров объектов и ввод данных: Контроль правильности выполнения этапа задания исходных данных:

Слайд 12





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 3 – Завершение процесса вычислений:
Функция для корректного завершения процесса вычислений ProcessTermination:
Освобождает память, выделенную в ходе выполнения программы,
Входные параметры - матрица pMatrix и векторы pVector и pResult
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 3 – Завершение процесса вычислений: Функция для корректного завершения процесса вычислений ProcessTermination: Освобождает память, выделенную в ходе выполнения программы, Входные параметры - матрица pMatrix и векторы pVector и pResult

Слайд 13





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 4 – Реализация умножения матрицы на вектор:…
Функция ResultCalculation выполняет умножение матрицы на вектор в соответствии с алгоритмом, изложенным в упражнении 1:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 4 – Реализация умножения матрицы на вектор:… Функция ResultCalculation выполняет умножение матрицы на вектор в соответствии с алгоритмом, изложенным в упражнении 1:

Слайд 14





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор…
Задание 4 – Реализация умножения матрицы на вектор:
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор… Задание 4 – Реализация умножения матрицы на вектор:

Слайд 15





Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор
Задание 5 – Проведение вычислительных экспериментов:
Замените вызов функции DummyDataInitialization на RandomDataInitialization в функции ProcessInitialization,
Добавьте вычисление и вывод времени выполнения умножения, 
Измерьте времена работы алгоритма умножения матрицы на вектор при различных количествах исходных данных,
Заполните таблицу результатов вычислений
Описание слайда:
Упражнение 2: Реализация последовательного алгоритма умножения матрицы на вектор Задание 5 – Проведение вычислительных экспериментов: Замените вызов функции DummyDataInitialization на RandomDataInitialization в функции ProcessInitialization, Добавьте вычисление и вывод времени выполнения умножения, Измерьте времена работы алгоритма умножения матрицы на вектор при различных количествах исходных данных, Заполните таблицу результатов вычислений

Слайд 16





Упражнение 3: Способы распределения данных…
Описание слайда:
Упражнение 3: Способы распределения данных…

Слайд 17





Упражнение 3: Способы распределения данных…
Описание слайда:
Упражнение 3: Способы распределения данных…

Слайд 18





Упражнение 3: Способы распределения данных
Описание слайда:
Упражнение 3: Способы распределения данных

Слайд 19





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Распределение данных – ленточная схема (разбиение матрицы по строкам)
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Распределение данных – ленточная схема (разбиение матрицы по строкам)

Слайд 20





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Схема параллельного выполнения:
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Схема параллельного выполнения:

Слайд 21





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Программная реализация:
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Программная реализация:

Слайд 22





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Проведение вычислительных экспериментов:
Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор,
Проведите вычислительные эксперименты,
Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных
Определите получаемое ускорение,
Заполните таблицу результатов вычислений
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Проведение вычислительных экспериментов: Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор, Проведите вычислительные эксперименты, Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных Определите получаемое ускорение, Заполните таблицу результатов вычислений

Слайд 23





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Desk-side T-Forge Mini cluster 
AMD Opteron® 275 2.2 GHz dual core processors 
RAM 4 GB
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Desk-side T-Forge Mini cluster AMD Opteron® 275 2.2 GHz dual core processors RAM 4 GB

Слайд 24





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам…
Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам… Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM

Слайд 25





Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам
Pentium D 820 2.8 GHz, 2 GB RAM
Описание слайда:
Упражнение 4: Разработка параллельного алгоритма, основанного на разделении матрицы по строкам Pentium D 820 2.8 GHz, 2 GB RAM

Слайд 26





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Распределение данных – ленточная схема (разбиение матрицы по столбцам)
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Распределение данных – ленточная схема (разбиение матрицы по столбцам)

Слайд 27





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Схема параллельного выполнения:
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Схема параллельного выполнения:

Слайд 28





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Программная реализация:
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Программная реализация:

Слайд 29





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Проведение вычислительных экспериментов:
Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор,
Проведите вычислительные эксперименты,
Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных
Определите получаемое ускорение,
Заполните таблицу результатов вычислений
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Проведение вычислительных экспериментов: Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор, Проведите вычислительные эксперименты, Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных Определите получаемое ускорение, Заполните таблицу результатов вычислений

Слайд 30





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Desk-side T-Forge Mini cluster 
AMD Opteron® 275 2.2 GHz dual core processors 
RAM 4 GB
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Desk-side T-Forge Mini cluster AMD Opteron® 275 2.2 GHz dual core processors RAM 4 GB

Слайд 31





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам…
Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам… Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM

Слайд 32





Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам
Pentium D 820 2.8 GHz, 2 GB RAM
Описание слайда:
Упражнение 5: Разработка параллельного алгоритма, основанного на разделении матрицы по столбцам Pentium D 820 2.8 GHz, 2 GB RAM

Слайд 33





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Распределение данных – блочная схема
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Распределение данных – блочная схема

Слайд 34





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Схема параллельного выполнения:
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Схема параллельного выполнения:

Слайд 35





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Программная реализация
Code
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Программная реализация Code

Слайд 36





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Проведение вычислительных экспериментов:
Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор,
Проведите вычислительные эксперименты,
Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных
Определите получаемое ускорение,
Заполните таблицу результатов вычислений
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Проведение вычислительных экспериментов: Добавьте вычисление и вывод времени выполнения параллельного алгоритма умножения матрицы на вектор, Проведите вычислительные эксперименты, Измерьте времена работы умножения матрицы на вектор при различных количествах исходных данных Определите получаемое ускорение, Заполните таблицу результатов вычислений

Слайд 37





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Desk-side T-Forge Mini cluster 
AMD Opteron® 275 2.2 GHz dual core processors 
RAM 4 GB
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Desk-side T-Forge Mini cluster AMD Opteron® 275 2.2 GHz dual core processors RAM 4 GB

Слайд 38





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки…
Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки… Intel Core 2 CPU 6300 1.86 GHz, 2 GB RAM

Слайд 39





Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки
Pentium D 820 2.8 GHz, 2 GB RAM
Описание слайда:
Упражнение 6: Разработка параллельного алгоритма, основанного на разделении матрицы на блоки Pentium D 820 2.8 GHz, 2 GB RAM

Слайд 40





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



Похожие презентации
Mypresentation.ru
Загрузить презентацию