Рабочая программа учебной дисциплины (модуля) Технологии параллельного программирования
Вид материала | Рабочая программа |
- Рабочая программа учебной дисциплины (модуля) Язык программирования Java, 90.39kb.
- Рабочая программа учебной дисциплины (модуля) Сетевые технологии и сетевое программирование, 89kb.
- Рабочая программа учебной дисциплины (модуля) Системное программирование, 108.12kb.
- Рабочая программа дисциплины «Методы визуального и параллельного программирования», 102.66kb.
- Рабочая программа учебной дисциплины (модуля) Объектно-ориентированное программирование, 99.17kb.
- Рабочая программа учебной дисциплины (модуля) Мордовский национальный костюм, 257.38kb.
- Рабочая программа по дисциплине «Технологии программирования» (наименование дисциплины), 228.98kb.
- Программа по курсу: современные технологии параллельного программирования (по выбору), 69.72kb.
- Рабочая программа учебной дисциплины (модуля) Введение в вычислительные методы, 137.16kb.
- Рабочая программа учебной дисциплины (модуля) Распределенные офисные технологии, 97.94kb.
Министерство образования и науки Российской Федерации
ГОУ ВПО «Мордовский государственный университет им. Н.П.Огарёва»
Математический факультет
Кафедра систем автоматизированного проектирования
-
«УТВЕРЖДАЮ»
_____________________
_____________________
«______»__________201_ г.
РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ (МОДУЛЯ)
Технологии параллельного программирования
Наименование магистерской программы
Математическое и программное обеспечение вычислительных машин
Направление подготовки
010400.68 – Прикладная математика и информатика
Квалификация (степень) выпускника
Магистр
Форма обучения
очная
г. Саранск
2011г.
1. Цели освоения дисциплины
Целью освоения дисциплины «Технологии параллельного программирования» является подготовка квалифицированных специалистов, обладающих знаниями в области технологий параллельного программирования и навыками их практического использования.
Задачи изучения дисциплины:
- формирование представлений об общей методологии и средствах параллельного программирования;
- углубленная подготовка студентов в области практического применения средствах параллельного программирования.
2. Место дисциплины в структуре магистерской программы
Дисциплина «Технологии параллельного программирования» относится к вариативной части общенаучного цикла.
Для изучения данной дисциплины студент должен получить необходимые знания, умения и компетенции, которые формируются в результате изучения перечисленных ниже дисциплин: «Основы информатики», «Методы оптимизации», «Математическая логика и теория алгоритмов», «Архитектура компьютеров», «Языки и методы программирования».
Знания и умения, полученные в результате освоения данной дисциплины, могут быть использованы в научно-исследовательской работе, при прохождении «Научно-исследовательской практики», а также при подготовке студентом магистерской диссертации.
3. Компетенции обучающегося, формируемые в результате освоения дисциплины (модуля) «Технологии параллельного программирования»
Процесс изучения дисциплины направлен на формирование следующих компетенций:
- способность использовать углубленные теоретические и практические знания в области прикладной математики и информатики (ОК-3),
- способность разрабатывать концептуальные и теоретические модели решаемых научных проблем и задач (ПК-2),
- способность углубленного анализа проблем, постановки и обоснования задач научной и проектно-технологической деятельности (ПК-3).
Знать:
- различные подходы в методологии программирования,
- парадигму модульного программирования,
- парадигму визуального программирования.
Уметь:
- анализировать, тестировать и проводить отладку алгоритмов,
- применения технологий инженерии программного обеспечения.
Владеть:
- различными методами решения задач,
- средствами инженерии программного обеспечения.
4. Структура и содержание дисциплины (модуля) «Технологии параллельного программирования»
Общая трудоемкость дисциплины составляет 3 зачетных единиц 108 часов.
№ п/п | Раздел дисциплины | Сем | Неделя семестра | Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) | Формы текущего контроля успеваемости (по неделям семестра) | Форма промежу-точной аттестации (по семестрам) | |||
Лекц. | Лаб. | СРС | Всего | ||||||
1 | Обзор области параллельных вычислений | | 1 (лекции), 1, 2 (лаб. раб.) | 2 | 4 | 6 | 12 | Отчет по ЛР №1 Отчет по ЛР №2 | зачет |
2 | Программирование с разделяемыми переменными | | 3, 5 (лекции), 3 - 6 (лаб. раб.) | 4 | 8 | 8 | 20 | Отчет по ЛР №3 Отчет по ЛР №4 Отчет по ЛР №5 Отчет по ЛР №6 | |
3 | Распределенное программирование | | 7, 9(лекции), 7 -10 (лаб.раб.) | 4 | 8 | 8 | 20 | Отчет по ЛР №7 Отчет по ЛР №8 | |
4 | Синхронное параллельное программирование | | 11, 13 (лекции), 11 - 14 (лаб.раб.) | 4 | 8 | 8 | 20 | Отчет по ЛР №9 | |
Итого | 14 | 28 | 30 | 72 | |
5. Образовательные технологии
Изучение дисциплины предполагает использование традиционных способов коллективного обучения – лекций, лабораторных занятий, индивидуальных заданий с последующей отчетностью. Применяемые информационные технологии: лекции в форме презентаций, обучающие и тестирующие программы, электронные учебники.
6. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины и учебно-методическое обеспечение самостоятельной работы студентов
Формой текущего контроля знаний студентов является контроль правильности выполнения и оформления лабораторных работ.
Формой итогового контроля знаний и умений студентов по курсу «Технологии параллельного программирования» является зачет.
Наименования лабораторных работ:
- Введение в MPI. Основные функции MPI.
- Введение в OpenMP. Основные директивы OpenMP.
- Виртуальные топологии. Примеры, использующие разные топологии. Умножение матрицы на вектор.
- Решение СЛАУ итерационными методами. Метод простой итерации и сопряженных градиентов.
- Решение СЛАУ методом Гаусса. Метод Гаусса.
- Решение задачи Пуассона в 3D методом Зейделя. Задача Пуассона.
- Распараллеливание невычислительной задачи. Сортировка массивов.
- Работа с отладчиком параллельных программ Gepard.
- Программирование многопоточных приложений. POSIX Threads.
Перечень вопросов для организации итогового контроля:
- Параллельные вычисления. Общий смысл.
- Мультипроцессоры и мультикомпьютеры
- Обзор программной нотации
- Программирование с разделяемыми переменными. Процессы и синхронизация.
- Программирование с разделяемыми переменными. Блокировки и барьеры.
- Программирование с разделяемыми переменными. Семафоры. Мониторы. Реализация
- Распределенное программирование. Передача сообщений.
- Распределенное программирование. Удаленный вызов процедур и рандеву.
- Распределенное программирование. Модели взаимодействия процессов.
- Распределенное программирование. Реализация языковых механизмов
- Синхронное параллельное программирование. Научные вычисления.
- Синхронное параллельное программирование. Языки, компиляторы, библиотеки и инструментальные средства
7. Учебно-методическое и информационное обеспечение дисциплины (модуля):
а) основная литература
- Эндрюс Г.Р. Основы многопоточного, параллельного и распределенного программирования. — М.: Издательский дом «Вильямс», 2003. — 512 с.
- Богачев К.Ю. Основы параллельного программирования. — М.: Бином. Лаборатория знаний, 2003. — 344 с
б) программное обеспечение и Интернет- ресурсы
- Электронный конспект лекций;
- Методические указания к выполнению лабораторных работ;
- Компьютерные программы для поддержки выполнения лабораторных работ;
- Наборы презентаций для лекционных занятий.
8. Материально-техническое обеспечение дисциплины (модуля):
- Аудитория для проведения лекционных занятий, имеющая необходимое количество посадочных мест (для занятий с группой из 10 студентов) и оснащенная оборудованием для проведения презентаций (ноутбук, проектор);
- Аудитория с персональными компьютерами для проведения лабораторных занятий, имеющая необходимое количество рабочих мест (для занятий с подгруппой из 10 15 студентов), оборудованная персональными компьютерами на базе процессора Intel Pentium II или выше, оснащенных необходимым системным и прикладным программным обеспечением.
Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и ПрООП ВПО по направлению 010400.68 – «Прикладная математика и информатика» и магистерской программе «Математическое и программное обеспечение вычислительных машин».
Автор: к.т.н., доцент кафедры систем автоматизированного проектирования
Пальдяев Н.Н.
Рецензент (ы)
Программа одобрена на заседании
от « » ____________ 2011 года, протокол № .