Опубликован: 05.11.2008 | Уровень: специалист | Доступ: свободно | ВУЗ: Нижегородский государственный университет им. Н.И.Лобачевского
Учебное пособие содержит материал, для работы в области параллельного программирования.
Дается краткая характеристика принципов построения параллельных вычислительных систем, рассматриваются математические модели параллельных алгоритмов и программ для анализа эффективности параллельных вычислений, приводятся примеры конкретных параллельных методов для решения типовых задач вычислительной математики. Рекомендовано Советом учебно-методическим объединением классических университетов России по прикладной математике и информатике.
Цель: Для студентов, аспирантов и специалистов, изучающих и практически использующих параллельные компьютерные системы для решения вычислительно трудоемких задач.

Microsoft DreamSpark

Бесплатные лицензионные инструменты разработки и дизайна для школьников, студентов, аспирантов и преподавателей.

Специальное предложение для студентов НОУ «ИНТУИТ».

 ...еще >>

План занятий

ЗанятиеЗаголовок <<Дата изучения
-
Лекция 1
Введение
В лекции дается общая информация о курсе. Вводится понятие параллельных вычислений и разъясняется их необходимость. Рассказывается о сдерживающих факторах развития этой отрасли, а также предоставляется характеристика необходимых знаний и умений для работы в области вычислений
-
Лекция 2
Принципы построения параллельных вычислительных систем
Лекция посвящена рассмотрению принципов построения параллельных вычислительных систем (ПВС). Дана краткая характеристика способов достижения параллелизма, приведены примеры ПВС. Приводится классификация параллельных вычислительных систем, рассматриваются типовые топологии сетей передачи данных в ПВС.
-
Тест 1
18 минут
-
Лекция 3
Моделирование и анализ параллельных вычислений
В лекции описывается модель вычислений в виде графа "операции – операнды". Приводятся основные показатели качества параллельных методов — ускорение (speedup), эффективность (efficiency), стоимость (cost) и масштабируемость (scalability) вычислений. Введенные понятия демонстрируются на примере учебной задачи нахождения частных сумм последовательности числовых значений
-
Тест 2
18 минут
-
Лекция 4
Оценка коммуникационной трудоемкости параллельных алгоритмов
Лекция посвящена вопросам анализа информационных потоков, возникающих при выполнении параллельных алгоритмов. Дается общая характеристика механизмов передачи данных, проводится анализ трудоемкости основных операций обмена информацией, рассматриваются методы логического представления структуры многопроцессорных вычислительных систем.
Оглавление
-
Тест 3
21 минута
-
Лекция 5
Параллельное программирование на основе MPI
В лекции рассматривается стандарт для программирования в системах с распределенной памятью MPI. Дается обзор истории возникновения и развития стандарта, а также перечисляются его основные возможности. Приводятся примеры программ, использующих рассматриваемый стандарт.
-
Лекция 6
Операции передачи данных между процессами и производные типы данных в MPI
В лекции продолжается рассматриваться параллельное программирование на основе MPI. Рассказывается об операциях передачи данных между процессами и производных типах данных в MPI.
-
Лекция 7
-
Тест 4
36 минут
-
Лекция 8
Принципы разработки параллельных методов
-
Тест 5
18 минут
-
Лекция 9
Параллельные методы умножения матрицы на вектор
В лекции рассматривается задача умножения матрицы на вектор. Приводится постановка задачи и последовательный алгоритм ее решения. Описываются методы разделения матрицы между процессорами вычислительной системы, которые необходимы для параллельной реализации матричных операций. Далее излагаются три возможных подхода к параллельной реализации алгоритма умножения матрицы на вектор.
Оглавление
-
Тест 6
18 минут
-
Лекция 10
Параллельные методы матричного умножения
В лекции рассматривается одна из основных задач матричных вычислений— умножение матриц. Приводится постановка задачи и дается последовательный алгоритм ее решения. Далее описываются возможные подходы к параллельной реализации алгоритма и подробно рассматриваются наиболее широко известные алгоритмы: алгоритм, основанный на ленточной схеме разделения данных, алгоритм Фокса (Fox) и алгоритм Кэннона (Cannon).
Оглавление
-
Тест 7
18 минут
-
Лекция 11
Параллельные методы решения систем линейных уравнений
В лекции рассматривается задача решения систем линейных уравнений. Приводятся необходимые определения и постановка задачи. Описывается последовательный и параллельный варианты одного из прямых методов решения линейных систем общего вида – метода Гаусса. Далее дается описание последовательного и параллельного алгоритмов, реализующих итерационный метод сопряженных градиентов.
-
Тест 8
18 минут
-
Лекция 12
Параллельные методы сортировки
В лекции рассматриваются различные алгоритмы сортировки данных. Излагаются как общие принципы, применяемые при распараллеливании, так и конкретные алгоритмы. Теоретически оценивается эффективность рассматриваемых алгоритмов. Приводятся и анализируются результаты вычислительных экспериментов.
Оглавление
-
Тест 9
24 минуты
-
Лекция 13
Параллельные методы обработки графов
В лекции рассматриваются различные типовые задачи, возникающие при обработке графов. Приводятся алгоритмы, применяемые для решения этих задач, и обсуждаются пути их распараллеливания. Дается теоретическая оценка эффективности рассматриваемых алгоритмов. Анализируются результаты вычислительных экспериментов.
Оглавление
-
Тест 10
27 минут
-
Лекция 14
Параллельные методы решения дифференциальных уравнений в частных производных
В лекции рассматриваются вопросы организации параллельных вычислений для решения задач, в которых при математическом моделировании используются дифференциальные уравнения в частных производных. Для численного решения подобных задач обычно применяется метод конечных разностей (метод сеток), обладающий высокой вычислительной трудоемкостью. В лекции последовательно разбираются возможные способы распараллеливания сеточных методов на многопроцессорных вычислительных системах с общей и распределенной памятью. При этом большое внимание уделяется проблемам, возникающим при организации параллельных вычислений, анализу причин появления таких проблем и нахождению путей их преодоления. Для наглядной демонстрации излагаемого материала в качестве учебного примера рассматривается проблема численного решения задачи Дирихле для уравнения Пуассона.
Оглавление
-
Тест 11
18 минут
-
Лекция 15
-
Лекция 16
Программная система ПараЛаб для изучения и исследования методов параллельных вычислений
В лекции описывается программная система Параллельная Лаборатория (сокращенное наименование – ПараЛаб), которая предназначена для учебного применения студентами и преподавателями вузов в целях исследования и изучения параллельных алгоритмов решения сложных вычислительных задач в рамках лабораторного практикума по различным учебным курсам в области параллельного программирования.
Оглавление
-
Тест 12
18 минут
-
5 часов
-
Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Лариса Парфенова
Лариса Парфенова

1) Можно ли экстерном получить второе высшее образование "Программная инженерия" ?

2) Трудоустраиваете ли Вы выпускников?

3) Можно ли с Вашим дипломом поступить в аспирантуру?