Кафедра Математического обеспечения ЭВМО кафедреПреподаватели и сотрудникиГергель Виктор Павлович
Новости
О кафедре
Преподаватели и сотрудники
Структура
Немного истории
Контакты
Фотохроника
Обучение
Исследования
Семинары и конференции
Сотрудничество
О сайте
Имя:
Пароль:
запомнить:
Забыли пароль? Регистрация

Гергель Виктор Павлович

CS338. Многопроцессорные вычислительные системы и параллельное программирование

Цель курса состоит в изучении математических моделей, методов и технологий параллельного программирования для многопроцессорных вычислительных систем в объеме, достаточном для успешного начала работ в области параллельного программирования. Излагаемый набор знаний и умений составляет теоретическую основу для методов разработки сложных программ и включают такие темы, как цели и задачи параллельной обработки данных, принципы построения параллельных вычислительных систем, моделирование и анализ параллельных вычислений, принципы разработки параллельных алгоритмов и программ, системы разработки параллельных программ, параллельные численные алгоритмы для решения типовых задач вычислительной математики. Изучение курса поддерживается расширенным лабораторным практикумом.

Требования к слушателям: Знание учебного материала курсов CS101 "Введение в методы программирования", CS105 "Дискретная математика", CS220 "Архитектура ЭВМ", CS225"Операционные системы", CS304 "Методы вычислений". При выполнении практических и лабораторных заданий требуется владение методами программирования на алгоритмическом языке С.
Описание курса:

  • Цели и задачи введения параллельной обработки данных (2 часа)
    Важность проблематики параллельных вычислений. 
  • Принципы построения параллельных вычислительных систем (4 часа)
    Обзор современных параллельных вычислительных систем. Классификация и оценка производительности. Понятие кластерных систем.
  • Модели вычислений и методы анализа эффективности (4 часа)
    Показатели эффективности параллельных вычислений: ускорение, эффективность, масштабируемость. Модель вычислений в виде графа "операции-операнды". Анализ модели: определение времени выполнения параллельного метода, оценка максимально достижимого распараллеливания, выбор вариантов распределения вычислительной нагрузки. Агрегация модели вычислений.
  • Анализ коммуникационной трудоемкости параллельных алгоритмов (4 часа)
    Критерии оценки топологии сети. Алгоритмы маршрутизации и методы передачи данных. Типовые операции взаимодействия. Методы логического представления топологии сети. Оценка времени передачи данных для кластерных систем.
  • Технология разработки параллельных программ для многопроцессорных систем с распределенной памятью (стандарт передачи сообщений MPI) (6 часов)
    Общая характеристика стандарта MPI. Режимы передачи данных. Коллективные операции. Конструирование производных типов данных. Управление процессами. Создание логических топологий. Примеры: матричные вычисления, решение уравнений в частных производных.
  • Модели функционирования параллельных программ (6 часов)
    Представление параллельной программы как системы параллельно выполняемых процессов. Обеспечение взаимоисключения при использовании разделяемых ресурсов. Понятие семафоров и монитора. Моделирование состояния программы в виде графа "процесс-ресурс". Анализ модели: обнаружение и исключение тупиковых ситуаций. Применение сетей Петри. Типовые задачи взаимоисключения: проблема "производитель-потребитель", задача "обедающие философы" и др.
  • Параллельные численные алгоритмы для решения типовых задач вычислительной математики (4 часа)
    Матричные вычисления (умножение матриц, транспонирование, решение систем линейных уравнений). Сортировка. Обработка графов. Оптимизация.
  • Технология разработки параллельных программ для многопроцессорных систем с общей памятью (стандарт OpenMP) (2 часа)
    Общая характеристика стандарта OpenMP. Создание параллельных областей. Разделение вычислительной нагрузки между потоками. Работа с данными. Синхронизация. Функции и переменные окружения. Сравнительная характеристика подходов параллельного программирования для систем с распределенной и общей памятью.

Описание лабораторного практикума:

  • Методы разработки параллельных программ для многопроцессорных систем с распределенной памятью с использованием библиотек реализации интерфейса передачи сообщений MPI (4 часа)
  • Практикум по разработке параллельных алгоритмов и программ для решения задач вычислительной математики (8 часов)
  • Практикум по использованию библиотек параллельных методов для решения сложных научно-технических задач (на примере библиотеки PLAPACK) (4 часа)

Затрагиваемые разделы: 

  • AL4 Распределенные алгоритмы 3 осн. часа ( из 3) 
  • AL11 Параллельные алгоритмы 4 осн. часов 
  • AR7 Многопроцессорные архитектуры 1 осн. часов (из 3)
  • AR8 Улучшение производительности 2 осн. часа 
  • OS3 Параллелизм 4 осн. часа (из 6) 
  • NC1 Введение в распределенные вычисления 2 осн. часов (из 2) 
  • CN1 Численный анализ 4 осн. час 
  • CN4 Высокопроизводительные вычисления 12 осн. часов 

Описание курса в соответствии со стандартом направления 5119 "Информационные технологии":

  • АЛ4 Распределенные алгоритмы 3 осн. часа ( из 3) 
  • АР7 Параллельные архитектуры 1 осн. часов (из 3)
  • ОС3 Параллелизм 4 осн. часа (из 6) 
  • КС1 Введение в сетевую обработку данных 2 осн. часов (из 2) 
  • Вычислительная математика 4 осн. час 
  • Суперкомпьютеры и их применение 12 осн. часов

Материалы курса


<< вернуться  |   Документ от: 12.07.2005 15:51

Новости

28.04.2014
21.04.2014
21.03.2014
12.01.2014
04.10.2013