Курс посвящен методам
программирования для систем с распределённой памятью. Даётся обзор
соответствующих технологий. Основное внимание уделяется программированию с
использованием интерфейса передачи сообщений (MPI). Рассматриваются программная
модель, основанная на передаче сообщений и эволюция MPI. Даётся общая
характеристика реализаций спецификации MPI-2. Приводятся примеры настройки
пользовательской среды для MPI-программирования в Microsoft Windows и Linux. На
простых примерах разъясняется назначение основных подпрограмм MPI. Обсуждаются
особенности обменов разного типа: двухточечных и коллективных, двухсторонних и
односторонних, и т.д. Рассматривается работа с группами, коммуникаторами,
виртуальными топологиями и производными типами. Кратко рассматриваются другие
средства MPI. Даётся обзор средств анализа выполнения параллельных MPI-программ.
Приводятся примеры типичных ошибок при MPI-программировании.
Курс предполагает выполнения
слушателями как простых, так и более сложных практических
заданий.