Интернет Университет информационных технологий Твой путь к знаниям
  Искать!
Курсы | Обучение | Школа | Магазин | Общение | Новости | Помощь

поддержка курса Параллельное программирование с OpenMP
Авторы: В.А. Крюков, В.А. Бахтин

? Уровень: для специалистов || Статус: бесплатный || Опубликован: 15.04.2009
Рейтинг: 4.44 || Популярность: 3 || Студентов: 3890/84


Информация о курсе
В рамках курса проводится изучение основных возможностей стандарта OpenMP, необходимых для создания эффективных параллельных программ для многоядерных и многопоточных процессоров. Рассматриваются подходы для функциональной отладки OpenMP-программ, а также отладки эффективности.
В рамках курса рассматриваются современные направления развития параллельных вычислительных систем (многоядерность и многопоточность), OpenMP – модель параллелизма по управлению, конструкции распределения работы, конструкции для синхронизации нитей, система поддержки выполнения OpenMP-программ, переменные окружения, управляющие выполнением OpenMP-программы, вложенный параллелизм, наиболее часто встречаемые ошибки в OpenMP-программах, функциональная отладка OpenMP-программ, отладка эффективности OpenMP-программ, использование OpenMP на кластере.

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

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

Записаться на обучение
  Варианты обучения Цена Документы
  Самостоятельно Бесплатно сертификат
  ИДО "ИНТУИТ" 2000 руб. сертификат + официальное удостоверение о повышении квалификации
  ВШБИ НИУ ВШЭ 8000 руб. удостоверение о повышении квалификации государственного образца
 
Телефон: +7(499) 253-9312, факс: +7(499) 253-9310, e-mail: dpo@intuit.ru, ICQ: Intuit.Ru (632-332-736), Skype: Intuit.Ru
1.
Современные направления развития параллельных вычислительных систем (многоядерность и многопоточность). SMP (Symmetric Multiprocessing) и DSM (Distributed Shared Memory)-системы. Процессы и нити. Модель общей памяти. Стандарт POSIX (Portable Operating System Interface for UNIX) для создания параллельных программ для мультипроцессоров.
2.
Выполнение OpenMP-программы (Fork and Join Model). Модель памяти. Понятие консистентности памяти. Консистентность памяти в OpenMP (weak ordering). Классы переменных (клаузы SHARED, PRIVATE; директива THREADPRIVATE).
3.
Директивы и клаузы. Понятие структурного блока. Компиляция OpenMP-программы. Параллельная область (директива PARALLEL). Понятие задачи (директива TASK).
4.
Распределение витков циклов. Циклы с зависимостью по данным. Организация конвейерного выполнения для циклов с зависимостью по данным. Распределение нескольких структурных блоков между нитями (директива SECTION). Редукционные операторы (клауза REDUCTION). Выполнение структурного блока одной нитью (директива SINGLE). Распределение операторов одного структурного блока между нитями (директива WORKSHARE). Копирование значений приватных переменных (клаузы FIRSTPRIVATE, LASTPRIVATE, COPYIN, COPYPRIVATE).
5.
Директивы MASTER, CRITICAL, BARRIER, TASKWAIT, ATOMIC, FLUSH, ORDERED.
6.
Задание/опрос количества нитей, выполняющих параллельную область. Определение номера нити. Внутренние переменные, управляющие выполнением OpenMP-программы (ICV-Internal Control Variables). Задание/опрос значений ICV-переменных. Функции для синхронизации нитей (семафоры). Функции работы со временем.
7.
Создание вложенной параллельной области. Распределение витков тесно-вложенных циклов (с использованием вложенных параллельных областей и клаузы COLLAPSE). Задание количества нитей для вложенной параллельной области. Задание/опрос максимального уровня вложенности для параллельных областей. Задание максимального количества создаваемых нитей (переменная OMP_THREAD_LIMIT).
8.
Стратегии распределения витков цикла между нитями (клауза SCHEDULE). Отмена барьерной синхронизации по окончании выполнения цикла (клауза NOWAIT). Локализация данных. Задание поведения нитей во время ожидания (переменная OMP_WAIT_POLICY). Оптимизация OpenMP-программы при помощи Intel Thread Profiler.
9.
Технология Intel Cluster OpenMP. Программная реализация DSM. Директива SHARABLE. Гибридная модель параллельного программирования MPI/OpenMP.
 
 

Внимание! Если Вы увидите ошибку на нашем сайте, выделите её и нажмите Ctrl+Enter.
Нужна помощь?
• Забыли пароль? Вам сюда...
• Есть вопрос? Спрашивайте!
Вы можете:
• Изменить персональные данные
• Изменить параметры подписки
Интернет-магазин:
• Ваши заказы здесь
• Ваш личный счет
Курсы | Учебные программы | Учебники | Вопросы и Ответы | Форум | Новости | Помощь

Телефон: +7 (499) 253-9312, 253-9313, факс: +7 (499) 253-9310, email: info@intuit.ru
© INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование, 2003-2011
Проект Издательства "Открытые Системы".
Партнеры: РМ Телеком, KRAFTWAY COMPUTERS.
Rambler's Top100