Опубликована: 10.03.2016 | Стоимость: бесплатно | Форма обучения: дистанционная, вебинар [?]
Сроки проведения: 15.03.2017 - 17.05.2017 [расписание]
Курс посвящен основам разработки параллельных программ с использованием интерфейса обмена сообщениями (MPI Message Passing Interface). Приводятся основные понятия и концепции модели передачи сообщений, рассматривается архитектура MPI.
В курсе дается краткий обзор моделей параллельного программирования и программных реализаций этих моделей, рассматриваются архитектура MPI, привязки к языкам программирования C/C++ и Fortran, структура MPI-программы, настройка среды, компиляция и выполнение MPI-программ, двухточечные обмены, блокирующие и неблокирующие, буферизованные, двух- и односторонние, коллективные обмены – широковещательная рассылка, распределение и сбор данных, операции редукции, синхронизация, работа с группами процессов, интра- и интеркоммуникаторы, пользовательские типы данных и виртуальные топологии.
| | Поделиться |

План занятий

ЗанятиеЗаголовок <<Дата изучения
17 мая 2017
00:00
Лекция 1
1 час
Параллельные модели программирования и их программные реализации
В лекции дается краткий обзор учебного курса, даются ссылки на учебно-методическую литературу и источники информации, которые могут быть использованы в рамках данного курса. Затем обсуждаются последовательная и параллельная модели программирования. Рассматриваются различные парадигмы параллельного программирования и соответствующие программные средства (POSIX Threads, Microsoft Windows API, OpenMP, MPI, PVM и т. д.).
Оглавление
    15 марта 2017
    17:00
    Тест 1
    12 минут
    22 марта 2017
    00:00
    Лекция 2
    1 час
    "Архитектура" MPI
    В лекции рассматривается "архитектура" программной реализации MPI на примере MPICH-2. Объясняется роль демона mpd, разбирается настройка пользовательской среды. Приводятся типовые схемы организации параллельных MPI-программ, их структура. Рассматриваются привязки к языкам программирования C и Fortran, а также способы компиляции и запуска MPI-программ. Лекция включает выполнение практических заданий.
    Оглавление
      22 марта 2017
      17:00
      Тест 2
      12 минут
      29 марта 2017
      00:00
      Лекция 3
      1 час
      Двухточечные обмены в MPI
      В лекции обсуждаются средства организации двухточечных обменов. Рассматриваются различные режимы блокирующих двухсторонних обменов, их реализация в MPI, приводятся примеры использования. Основное внимание уделяется стандартным обменам, обменам с буферизацией и "по готовности". Рассматриваются функции "приёмопередачи", а также возможные проблемы при организации двухточечных обменов.
      Оглавление
        29 марта 2017
        17:00
        Тест 3
        18 минут
        5 апреля 2017
        00:00
        Лекция 4
        1 час
        Неблокирующие двухточечные обмены
        В лекции описываются средства организации неблокирующих двухточечных обменов. Рассматриваются операции неблокирующих отправки и приёма сообщений, процедуры-пробники. Даются примеры использования неблокирующих операций.
        Оглавление
          5 апреля 2017
          17:00
          Тест 4
          18 минут
          12 апреля 2017
          00:00
          Лекция 5
          1 час
          Коллективные обмены
          В лекции рассматриваются коллективные обмены. Среди них – широковещательная рассылка. Обсуждаются операции распределения и сбора данных, а также операции приведения (редукции). Внимание уделяется также роли синхронизации в параллельном программировании и средствам синхронизации в MPI.
          Оглавление
            12 апреля 2017
            17:00
            Тест 5
            18 минут
            19 апреля 2017
            00:00
            Лекция 6
            1 час
            Группы процессов и коммуникаторы
            В лекции рассматриваются средства организации групп процессов и соответствующих им коммуникаторов. Речь идёт об интра- и интеркоммуникаторах. Разбираются примеры использования коллективных обменов в производных группах процессов, а также обмена между группами процессов.
            Оглавление
              19 апреля 2017
              17:00
              Тест 6
              18 минут
              26 апреля 2017
              00:00
              Лекция 7
              1 час
              Пользовательские типы. Виртуальные топологии
              В лекции рассматриваются методы работы с пользовательскими типами данных. Пользовательские типы позволяют обойти некоторые ограничения MPI. Разъясняются такие вопросы, как построение карты типа, его регистрация и аннулирование. Обсуждаются примеры использования пользовательских типов в MPI-программах. Рассматриваются также виртуальные топологии, которыми могут быть наделены группы процессов, относящихся к MPI-программе. Основное внимание уделяется декартовым топологиям. Приводятся примеры.
              Оглавление
                26 апреля 2017
                17:00
                Тест 7
                18 минут
                3 мая 2017
                00:00
                Лекция 8
                1 час
                Другие возможности MPI
                В заключительной лекции дается краткий обзор тех возможностей MPI, которые не рассматривались в предыдущих лекциях. Среди них односторонние обмены, дополнительные вопросы организации коллективных обменов, а также средства управления процессами из MPI-программы в процессе ее выполнения.
                Оглавление
                  3 мая 2017
                  17:00
                  Тест 8
                  12 минут
                  10 мая 2017
                  00:00
                  5 часов
                  17 мая 2017
                  00:00
                  Гоша Петров
                  Гоша Петров
                  ВУЗ: СФ БашГУ
                  Александр Бикмеев
                  Александр Бикмеев
                  Интересы: Математика