Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления




Скачать 84.84 Kb.
НазваниеПрограмма повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления
Дата27.12.2012
Размер84.84 Kb.
ТипПрограмма
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ.


ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИМ. Н.И. ЛОБАЧЕВСКОГО


«УТВЕРЖДАЮ»


«_____»_________2008г.


ПРОГРАММА

повышения квалификации профессорско-преподавательского состава

по приоритетному направлению
ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ВЫЧИСЛЕНИЯ



ОБЪЁМ УЧЕБНОЙ НАГРУЗКИ И ВИДЫ ОТЧЁТНОСТИ


Лекции

46ч.

Практические занятия

26ч.

Индивидуальные занятия с преподавателем



Самостоятельные занятия



ВСЕГО

72ч.

Итоговая аттестация

Выпускная работа



Нижний Новгород

2008 г.


Аннотация


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

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

Используемые в программе учебно-методические материалы прошли многократную успешную апробацию в ходе проведения Летних и Зимних школ по параллельному программированию, системному программированию, проекта Intel Studio, опираются на результаты ряда научно-исследовательских проектов, организованных и проведенных совместно с корпорациями Intel, Microsoft, IBM.

К отличительным особенностям программы стоит отнести сочетание углубленного изучения избранных тем системного программирования с такими актуальными разделами, как оптимизация программ и параллельное программирование, ориентированными на разработку эффективных программ для современных архитектур вычислительных систем.

Авторский коллектив, работавший над программой, составлен из сотрудников факультета ВМК ННГУ. На сегодняшний день ННГУ обладает как методической, так и материально-технической базой, необходимой для реализации данной программы. Так, компания Intel в целях развития совместной учебно-научной деятельности передала ННГУ первый в Европе класс на основе двухядерных процессоров. Дополнительное оборудование, закупленное университетом в рамках национального проекта «Образование», вывело вычислительную систему ННГУ в число 10 лучших в рейтинге высокопроизводительных компьютерных систем науки и образования стран СНГ. В 2006 г. руководитель корпорации Интел вручил ректору ННГУ им. Н.И. Лобачевского Почетный диплом «В признание выдающегося вклада в подготовку кадров высшей квалификации в области информационных технологий» (всего таким дипломом награждены три российских вуза). В 2005 г. на всемирно-известной конференции Supercomputing 2005 руководитель компании Майкрософт Билл Гейтс выделил 10 университетов мира, с которыми компания сотрудничает в области высокопроизводительных вычислений, среди них один университет из России – ННГУ. В 2006 г. при поддержке компании Майкрософт в ННГУ созданы первый в России Центр компетенции в области высокопроизводительных вычислений и Академический инновационный центр.

Члены авторского коллектива неоднократно вели занятия в соответствии с разделами данной программы, являются соавторами соответствующих учебных курсов и пособий.


Основные характеристики программы


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

Задачи программы:

  • дать представление об основных подходах к повышению производительности архитектур ЭВМ;

  • рассмотреть вопросы оптимизации программ по скорости решения задачи; научить эффективно использовать особенности современных архитектур;

  • рассмотреть поддержку параллелизма на уровне операционных систем;

  • изучить основы параллельного программирования для многоядерных архитектур и кластерных систем.

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

Количество учебных часов: 72

Категория слушателей: профессорско-преподавательский состав вузов и научно-исследовательских институтов.

Количество слушателей в год: 100 чел.

Документ об окончании программы: государственное удостоверение о краткосрочном повышении квалификации

Программу составили:

Гергель В.П., д.т.н., проф. каф. математического обеспечения ЭВМ ф-та ВМК ННГУ.

Мееров И.Б., к.т.н., доц. каф. математического обеспечения ЭВМ ф-та ВМК ННГУ.

Сысоев А.В., асс. каф. математического обеспечения ЭВМ ф-та ВМК ННГУ.

Линев А.В., зав. уч. лаб. каф. интеллектуальных информационных систем и геоинформатики.


Содержание программы


Раздел 1. Параллелизм как основа архитектуры современных вычислительных систем (10 ч.)

    1. Классификация архитектур ВС.

    2. Принципы конвейеризации.

    3. Статическая конвейеризация.

    4. Динамическое планирование.

    5. Векторная обработка.

    6. Модели многопоточных процессоров.

    7. Многопроцессорные системы с общей шиной памяти.

    8. Массивно-параллельные системы, кластерные системы.

    9. Примеры дизайна многопроцессорных систем.

    10. Взгляд в будущее.

Раздел 2. Оптимизация программного обеспечения (10 ч.)

    1. Введение в оптимизацию программ. Роль оптимизации. Критерии оптимизации. Необходимость оптимизации. Виды оптимизации.

    2. Анализ эффективности алгоритмов и алгоритмическая оптимизация.

Лабораторная работа: Вычисление чисел Фибоначчи.

    1. Оптимизация структур данных.

    2. Программная оптимизация. Основные приемы и техники оптимизации. Команды SIMD и их эффективное применение для расчетов. Использование оптимизирующих компиляторов.

Лабораторная работа: Использование оптимизирующего компилятора Intel C++ Compiler.

Лабораторная работа: Оптимизация по скорости в задаче матричного умножения.

Раздел 3. Операционные системы: аспекты параллелизма (16 ч.)

    1. Процессы, потоки, ресурсы.

Лабораторная работа: Создание командного интерпретатора.

    1. Планирование ЦП.

    2. Синхронизация. Тупики.

Лабораторная работа: Решение задачи «Читатели-писатели».

Лабораторная работа: Решение задачи «Производитель-потребитель».

Раздел 4. Параллельное программирование для многоядерных архитектур (20 ч.)

    1. Введение в параллельное программирование.

    2. OpenMP как стандарт параллельного программирования для систем с общей памятью. Принципы организации параллелизма. Составные части OpenMP. Директивы компилятора, функции run-time библиотеки.

Лабораторная работа: Параллельный «Hello world».

Лабораторная работа: Вычисление скалярного произведения векторов с «ручным» распределением работы.

    1. Основные директивы OpenMP. Формат записи. Области видимости. Типы директив. Распределение вычислений между потоками. Управление областью видимости данных.

Лабораторная работа: Вычисление скалярного произведения векторов с распределением работы в цикле. Эксперименты с различными вариантами расписания (schedule). Замеры эффективности.

    1. Синхронизация как задача параллельного программирования. Средства синхронизации в OpenMP. Библиотека функций OpenMP.

Лабораторная работа: Решение задачи матрично-векторного умножения. Реализация и сравнение различных схем распределения данных.

    1. Отладка и профилирование параллельных программ для систем с общей памятью. Инструменты отладки и профилирования на примере Intel Thread Checker, Intel Thread Profiler.

Лабораторная работа: Примеры на типичные ошибки в OpenMP программах: скалярное произведение, задача Дирихле, обедающие философы.

Лабораторная работа: Распределение вычислительной нагрузки (вопросы оптимизации параллельной программы исследуются на примере приложения, осуществляющего поиск простых множителей массива чисел).

Лабораторная работа: Синхронизация и накладные расходы на поддержку многопоточности (вопросы оптимизации параллельной программы исследуются на примере приложения, имитирующего работу клиент-серверной системы).

Раздел 5. Параллельное программирование для кластерных систем (16 ч.)

    1. MPI как стандарт параллельного программирования для систем с распределенной памятью. Принципы организации параллелизма с использованием MPI. Состав MPI.

Лабораторная работа: Параллельный «Hello world».

Лабораторная работа: Вычисление скалярного произведения векторов с «ручным» распределением работы.

    1. Режимы передачи данных. Группы процессов и коммуникаторы. Коллективные операции.

    2. Операции синхронизации и измерения времени.

Лабораторная работа: Вычисление числа Пи.

Лабораторная работа: Параллельная сортировка.

    1. Параллельные численные алгоритмы для решения типовых задач вычислительной математики


Темы итоговых работ

  1. Параллельная реализация алгоритма умножения вектора на вектор в системах с общей памятью.

  2. Параллельная реализация алгоритма умножения матрицы на вектор в системах с общей памятью.

  3. Параллельная реализация алгоритма умножения матрицы на матрицу в системах с общей памятью.

  4. Параллельная реализация алгоритма умножения вектора на вектор в системах с распределенной памятью.

  5. Параллельная реализация алгоритма умножения матрицы на вектор в системах с распределенной памятью.

  6. Параллельная реализация алгоритма умножения матрицы на матрицу в системах с распределенной памятью.

  7. Оптимизация вычислений в задаче матричного умножения.


Литература


Основная литература

  1. Воеводин В.В., Воеводин Вл.В. (2002). Параллельные вычисления. – СПб.: БХВ-Петербург.

  2. Касперски Крис. (2003). Техника оптимизации программ. Эффективное использование памяти. - Санкт-Петербург: БХВ-Петербург.

  3. Кормен Т., Лейзерсон Ч., Ривест Р. (1999). Алгоритмы. Построение и анализ.-М.:МЦНМО.

  4. Кнут Д.Э. (2000). Искусство программирования. Т. 1. Основные алгоритмы.-М.:Вильямс.

  5. Кнут Д.Э. (2004). Искусство программирования. Т. 3. Сортировка и поиск.-М.:Вильямс.

  6. Олифер В.Г., Олифер Н.А. (2002). Сетевые операционные системы.-СПб.: Питер.

  7. Рихтер Дж. (2001). Windows для профессионалов: создание эффективных Win32 приложений с учетом специфики 64-разрядной версии Windows / Пер. с англ.- 4-е изд.-СПб.: Питер; М.: Издательско-торговый дом "Русская Редакция".

  8. Стивенс Р. (2004). Delphi. Готовые алгоритмы. – М.: ДМК Пресс; СПб: Питер.

  9. Таненбаум Э. (2002) . Архитектура компьютера. – СПб.: Питер.

  10. Culler, D., Singh, J.P., Gupta, A. (1998) Parallel Computer Architecture: A Hardware/Software Approach. - Morgan Kaufmann.

  11. Quinn, M. J. (2004). Parallel Programming in C with MPI and OpenMP. – New York, NY: McGraw-Hill.

  12. Tanenbaum, A. (2001). Modern Operating System. 2nd edn. – Prentice Hall (русский перевод Таненбаум Э. Современные операционные системы. – СПб.: Питер, 2002)


Дополнительная литература

  1. Айден К., Фибельман Х., Крамер М. (1996). Аппаратные средства РС: Пер. с нем.- СПб.: BHV-Санкт-Петербург, - 544с.

  2. Гук М. (2003). Аппаратные средства IBM РС. Энциклопедия, 2-е изд.- СПб.: Питер,- 928 с.

  3. Немнюгин С., Стесик О. (2002). Параллельное программирование для многопроцессорных вычислительных систем – СПб.: БХВ-Петербург.

  4. Bik. A.J.C. (2004). The software vectorization handbook. IntelPress.

  5. Chandra, R., Dagum, L., Kohr, D., Maydan, D., McDonald, J., and Melon, R. (2000). Parallel Programming in OpenMP. Morgan Kaufmann Publishers.

  6. Grama, A., Gupta, A., Kumar V. (2003, 2nd edn.). Introduction to Parallel Computing. – Harlow, England: Addison-Wesley.

  7. Pacheco, P. (1996). Parallel Programming with MPI. - Morgan Kaufmann.

  8. Intel IA-32 Architecture optimization reference manual.



Методические указания и пособия

  1. Гергель, В.П., Стронгин, Р.Г. (2003, 2 изд.). Основы параллельных вычислений для многопроцессорных вычислительных систем. - Н.Новгород, ННГУ.

  2. Гергель В.П. Теория и практика параллельных вычислений. – М.: Интернет-Университет Информационных технологий; БИНОМ. Лаборатория знаний, 2007.







Похожие:

Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Информатизация образования» («Информационные и коммуникационные технологии в образовании»)
Курс предназначен для повышения квалификации преподавателей в области новых образовательных технологий
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Информатизация образования» («Информационные и коммуникационные технологии в образовании»)
Курс предназначен для повышения квалификации преподавателей в области новых образовательных технологий
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Современные технологии в образовании»
Государственное образовательное учреждение высшего профессионального образования
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма курсов повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Информационная компетентность в профессиональной деятельности преподавателя вуза. Компьютерные технологии промышленного дизайна»
Основы базовых возможностей систем трехмерного моделирования Autodesk 3ds max и Autodesk Inventor
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава «Управление качеством образования»
Повышение квалификации профессорско-преподавательского состава по созданию, мониторингу, обеспечению функционирования и оптимальному...
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма курсов повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Современные технологии в образовании. Электронные учебные издания: создание и использование в учебном процессе»
Цель программы: подготовить слушателей к созданию и эффективному использованию электронных учебных изданий в образовательном процессе...
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава по направлению
«Информационно-коммуникационные технологии в профессиональной деятельности преподавателя»
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма курсов повышения квалификации профессорско-преподавательского состава по направлению «Современные технологии в образовании. Преподаватель дистанционного обучения»
В соответствие с основной целью, обучение на курсах повышения квалификации по данной специализации ориентировано на решение следующих...
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма повышения квалификации профессорско-преподавательского состава «Основы создания электронных учебников и пособий»
Составители учебно-тематического плана программы повышения квалификации – все вышеперечисленные разработчики программы повышения...
Программа повышения квалификации профессорско-преподавательского состава по приоритетному направлению высокопроизводительные вычисления iconПрограмма «Современные нанотехнологии» повышения квалификации профессорско-преподавательского состава по приоритетному направлению «Проблемы подготовки кадров по приоритетным направлениям науки,
«Проблемы подготовки кадров по приоритетным направлениям науки, техники, критическим технологиям, сервиса и других сфер, относящихся...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница