Министерство образования Российской Федерации Санкт-Петербургский государственный электротехнический университет “ЛЭТИ”

advertisement
Министерство образования Российской Федерации
Санкт-Петербургский государственный электротехнический
университет “ЛЭТИ”
РАБОЧАЯ ПРОГРАММА
дисциплины
МЕТОДЫ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ
Для подготовки дипломированных специалистов
по направлению 657100 – “Прикладная информатика”
по специальности 073000 – “Прикладная математика”
Санкт-Петербург
2001
Санкт-Петербургский государственный электротехнический
университет “ЛЭТИ”
“УТВЕРЖДАЮ”
Проректор по учебной работе
проф. ___________ Ушаков В.Н.
“_____”_______________2001 г.
РАБОЧАЯ ПРОГРАММА
дисциплины
МЕТОДЫ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ
Для подготовки дипломированных специалистов
по направлению 657100 – “Прикладная информатика”
по специальности 073000 – “Прикладная математика”
Факультет компьютерных технологий и информатики
Кафедра математического обеспечения и применения ЭВМ
Курс – 5
Семестр – 10
Лекции
30 ч.
Текущий контроль
10 семестр
Лабораторные работы
15 ч.
Зачет
10 семестр
Аудиторные занятия
Самостоятельные занятия
Всего часов
45 ч.
50 ч.
95 ч.
2001
2
Рабочая программа обсуждена на заседании кафедры математического обеспечения и
применения ЭВМ “____”_______________2001г., протокол №______.
Рабочая программа согласована с рабочими программами изученных ранее дисциплин «Высшая математика» , « Программирование и основы алгоритмизации», «Операционные системы».
Рабочая
программа
“____”_____________2001г.
одобрена
методической
3
комиссией
ФКТИ
Цели и задачи дисциплины
1. Изучение базовых методов и средств параллельной обработки информации.
2. Формирование практических навыков организации параллельных вычислительных
процессов в системах реального времени.
Рабочая программа согласована с рабочими программами изученных ранее дисциплин:
1. Высшая математика.
2. Программирование и основы алгоритмизации.
3. Операционные системы.
Требования к уровню освоения дисциплины
В результате изучения дисциплины студенты должны:
1.Знать основные методы и средства параллельной обработки информации: алгоритмы параллельной обработки, средства их представления, методы отображения алгоритмов на регулярные матричные структуры, методы отображения матричных структур
в среду процессорных элементов, средства программирования параллельных вычислений и их реализации;
2.Уметь ставить задачи, связанные с параллельными вычислениями, для решения
в среде векторных и матричных структур из процессорных элементов;
3.Иметь представление о составе программного обеспечения вычислительных систем со средствами параллельной обработки и о классах языков программирования высокого уровня для них.
Содержание рабочей программы
Введение.
Методы и средства параллельной обработки информации – параллельные вычислительные методы, параллельные вычислительные системы, параллельное программирование. Параллелизм как фундаментальное и естественное свойство вычислений. Параллельная обработка в системах реального времени.
Тема 1. Параллельные выражения алгоритмов и параллельные программы.
Векторизация последовательных выражений алгоритмов. Прямые выражения параллельных алгоритмов: программа с однократными присваиваниями, рекурсивные алгоритмы с глобальными и локальными связями, кадры, граф зависимостей (ГЗ), локализованный граф зависимостей. Разработка параллельных программ. Особенности параллельных программ в системах реального времени.
Тема 2. Методология канонического отображения
Методология проектирования, основанная на графах. Отображение алгоритма в
граф зависимостей: инвариантность (однородность) ГЗ относительно сдвига, локализация связей в ГЗ, пример ГЗ для алгоритма свертки, локализация с включением промежуточных переменных, пример ГЗ для алгоритма авторегрессионой фильтрации. Отображение ГЗ в граф потока сигналов (ГПС): понятие ГПС, пример ГПС для свертки, назначение процессоров и планирование, допустимые линейные планы, типы планов. ГПС,
инвариантные относительно времени; алгебраический подход к проекции ГПС; построение ГЗ по ГПС. Отображение ГПС в матричный процессор: типы матричных процессо-
4
ров (систолический процессор, волновой процессор), примеры отображений для цифровых фильтров, умножение ленточных и прямоугольных матриц.
Тема 3. Методология обобщенного отображения ГЗ в ГПС
Назначение узлов и планирование. Типы проекций ГЗ (на примере для алгоритма
исключения Гаусса-Жордана). Мультипроекция (на примере умножения ленточных матриц). Нелинейный план и нелинейное назначение (на примере каскадно последовательного умножения матрицы на вектор). Линейная проекция в ГПС с глобальной связью.
Отображение с минимальным временем ожидания: план с минимальным временем ожидания, задача целочисленного программирования для определения минимального времени ожидания при фиксированном числе процессорных элементов, план с минимальным временем ожидания при фиксированном назначении узлов.
Тема 4. Систолические массивы
Определение систолических массивов. Свойства: синхронность, модульность и
регулярность, пространственная и временная локальность, конвейеризуемость. Примеры: систолический массив для свертки и гексогональный массив для умножение ленточных матриц. Требования к систолическим структурам: простота и регулярность схемы,
параллелизм и локальность связей, сбалансированность вычислений с вводом-выводом,
схема разводки синхросигналов.
Тема 5. Отображение ГЗ и ГПС в систолические массивы
Непосредственное отображение ГЗ в систолическую схему. Процедура систолизации сечением. Процедура ресинхронизации сечением: масштабирование времени, перемещение задержки, процедура систолизации. Примеры: систолические массивы для
умножения матриц, ресинхронизация в систолических массивах для сортировки и свертки, систолические массивы для поразрядной обработки.
Тема 6. Анализ производительности и оптимизация структуры
Критерии оптимальности, структуры с минимальным временем вычислений, схемы с минимальным конвейерным тактом. Оптимизация на этапах разработки ГЗ, ГПС и
систолизации. Процедура минимизации числа элементов задержки. Многоскоростная
систолическая схема. Повышение эффективности использования процессорных элементов: конвейер с чередованием, разделение процессора, требование одинаковых времен
обработки для процессорных элементов.
Тема 7. Отображение алгоритмов на волновые процессоры
Понятие вычислительных волновых фронтов. Пример волновой обработки для
умножения матриц. Отображение ГЗ на волновые процессоры: граф потока данных
(ГПД), отображение ГЗ на ГПД, получение ГПД из ГПС.
Тема 8. Временной анализ и оптимальное распределение очередей
Временной анализ графа потока данных: двойственность маркеров и пробелов,
временные помеченные графы (ВПГ), конвейерный такт ВПГ, конвейерный такт ГПД.
Оптимизация производительности ГПД: оптимальный конвейерный такт, задача минимального распределения очередей. Временной анализ регулярных волновых процессоров.
Тема 9. Транспьютеры.
Базовая архитектура и концепция. Внутренняя архитектура транспьютеров. Проектирование транспьютерного ПО: многопотоковое программирование, операционные си-
5
стемы, загрузка и анализ транспьютерных сетей, отладка и профилирование параллельных
программ, установка программ в целевую систему, исследование и тестирование транспьютерных сетей.
Заключение.
Тенденции развития методов параллельных вычислений и параллельного программирования.
6
Перечень лабораторных работ
Номер
лаб.
работы
1
2
3
4
5
Номера
тем
Наименование и содержание лабораторной работы
Применение механизмов многопотокового программирования
для разработки параллельных программ
Применение сообщений и общей памяти для передачи данных
Применение параллельных алгоритмов для решения задач линейной алгебры.
Применение параллельных алгоритмов для решения задач сортировки массивов данных.
Применение параллельных алгоритмов для решения задач цифровой фильтрации сигналов
1,9
1,9
2,6,9
2,6,9
2,6,9
Распределение учебных часов по темам и видам занятий
№
темы
Название разделов и тем
Введение
1
2
3
4
5
6
7
8
9
Параллельные
выражения
алгоритмов.
Методология канонического
отображения
Методология обобщенного
отображения ГЗ в ГПС
Систолические массивы
Отображение ГЗ и ГПС в систолические массивы
Анализ производительности
и оптимизация структуры
Отображение алгоритмов
на волновые процессоры
Временной анализ и оптимальное
распределение
очередей
Транспьютеры
ИТОГО:
Лекции
Лабор.
занятия
Объем учебных часов
Практ.
Аудит. Самост.
занятия занятия работа
Всего
Семестр
1
5
3
1
8
4
1
7
10
10
2
3
5
6
8
10
2
2
6
12
10
3
3
3
3
8
8
17
16
10
10
7
4
8
10
2
2
6
14
10
2
2
2
10
10
12
45
6
50
2
95
10
4
3
6
30
6
15
7
ЛИТЕРАТУРА
Основная
№
Название, библиографическое описание
Программирование на параллельных вычислительных системах. Под ред. Р.Бэбба. М.: Мир,
1991.
Транспьютеры. Под ред. Г.Харпа. М. Радио и
связь. 1993
1
2
Л
10
3
В.В.Воеводин, Вл.В.Воеводин - "Параллельные
вычисления". С-Пб., БХВ-Петербург.2002
10
4
Э.Немет, Г.Снайдер, С.Сибас, Т.Хейн UNIX: руководство системного администратора. С-Пб.,
Питер, 2003г
10
Лр
Кп
(ð)
К-во экз.
в библ.
(на каф.)
Гриф
10
10
86
ГК СССР
по
нар.обр.
Ф/Б
Ком. по
ВШ Мин.
науки
Мин. обр.
РФ
10
10
7
28
Мин. обр.
РФ
Дополнительная
№
Название, библиографическое описание
К-во экз. в
библ. (на
каф.)
1
Чан Т Системное программирование на С++ для UNIX. BHV Киев. 1999
0
2
Кун С. Матричные процессоры на СБИС. М. Мир. 1991
0
3
Хоар Ч. Взаимодействующие последовательные процессы. М.:
Мир,1989.
0
8
Автор:
(с к.т.н.
Селеджи Г.Ц.
Рецензент
к.т.н., доцент
Ю.С.Татаринов
Зав. кафедрой математического обеспечения и применения ЭВМ
д.т.н., профессор
Декан факультета Компьютерных технологий и информатики
д.т.н., профессор
Лисс А.Р.
Герасимов И.В.
Программа согласована:
Зав. отделом учебной литературы
Смирнова О.Н.
Председатель методической комиссии
факультета Компьютерных технологий
и информатики (обеспечивающего дисциплину)
к.т.н., доцент
В.А.Михалков
к.т.н., доцент
Марасина Л.А.
9
Download