Информатика и вычислительная техника
  • формат pdf
  • размер 1,02 МБ
  • добавлен 07 декабря 2013 г.
Гергель В.П., Лабутина А.А. Учебно-образовательный комплекс по методам параллельного программирования
Учеб. метод. пособие. — Н. Новгород: Изд-во ННГУ, 2007. — 138 с.
Учебно-методические материалы содержат информацию о принципах разработки методов параллельных вычислений, подробное описание технологии OpenMP разработки параллельных программ для систем с общей памятью, а также примеры применения описанных подходов для распараллеливания алгоритмов умножения матрицы на вектор и матрицы на матрицу с применением OpenMP.
Содержание
Принципы разработки параллельных методов
Моделирование параллельных программ
Этапы разработки параллельных алгоритмов
Параллельное программирование с использованием OpenMP
Основы технологии OpenMP
Выделение параллельно-выполняемых фрагментов программного кода
Распределение вычислительной нагрузки между потоками (распараллеливание по данным для циклов)
Управление данными для параллельно-выполняемых потоков
Организация взаимоисключения при использовании общих переменных
Распределение вычислительной нагрузки между потоками (распараллеливание по задачам при помощи директивы sections)
Расширенные возможности OpenMP
Дополнительные сведения
Параллельные методы умножения матрицы на вектор
Принципы распараллеливания
Постановка задачи
Последовательный алгоритм
Умножение матрицы на вектор при разделении данных по строкам
Умножение матрицы на вектор при разделении данных по столбцам
Умножение матрицы на вектор при блочном разделении данных
Параллельные методы матричного умножения
Постановка задачи
Последовательный алгоритм
Базовый параллельный алгоритм умножения матриц
Алгоритм умножения матриц, основанный на ленточном разделении данных
Блочный алгоритм умножения матриц
Блочный алгоритм, эффективно использующий кэш-память