Курс посвящен основам разработки параллельных программ с использованием интерфейса обмена сообщениями (MPI Message Passing Interface). Приводятся основные понятия и концепции модели передачи сообщений, рассматривается архитектура MPI.
В курсе дается краткий обзор моделей параллельного программирования и программных реализаций этих моделей, рассматриваются архитектура MPI, привязки к языкам программирования C/C++ и Fortran, структура MPI-программы, настройка среды, компиляция и выполнение MPI-программ, двухточечные обмены, блокирующие и неблокирующие, буферизованные, двух- и односторонние,
коллективные обмены – широковещательная рассылка, распределение и сбор данных, операции редукции, синхронизация, работа с группами процессов, интра- и интеркоммуникаторы, пользовательские типы данных и виртуальные топологии.
Цель курса состоит в приобретении базовых навыков использования интерфейса обмена сообщениями MPI для разработки параллельных приложений.