OSS Group OSS Group
>  Карта
>  Поиск
>  Контакты
>  OSS Group  ::  Admin  ::  MPI
  
РегистрацияЗабыли пароль?

↓  Быстрый поиск по Wiki


Режим поиска:   И   ИЛИ

↓  Доступные Wiki

↓  Навигация по сайту

[]

↓  Последняя новость

Загрузка...

↓  На эту страницу ссылаются:

Get Firefox!
[~]

MPI

MPI - Message Passing Interface (взаимодействие через передачу сообщений) - один из методов организации параллельных вычислений. Существуют две версии протокола, MPI 1.0 и MPI 2.0.

Современные основные реализации MPI поддерживают MPI2.0, работают на большом количестве платформ. Все реализации отличаются одинаковым интерфейсом с точки зрения пользовательских программ. Библиотека MPI существует под C и Fortran, в экспериментальном виде поддерживается C++.

Открытые реализации

  • LAM-MPI, University of Notre Dame, поддержка MPI 2.0, - главная страница проекта.
  • MPICH2, Argonne National Laboratory, поддержка MPI 2.0
  • OpenMPI, поддержка MPI 2.0, релиз в январе 2005 г.
  • MP-MPICH - мультиплатформенная реализация MPICH.

Старые реализации

  • MPICH, Argonne National Laboratory, поддержка MPI 1.0.
  • LA-MPI, Los Alamos, поддержка MPI 1.0
  • LAM-MPI, Laboratory for Scientific Computing of the University of Notre Dame Уже нет, влилось в OpenMPI

Общий вид программы, написанной с использованием MPI

  • Начальная инициализация
  • Инициализация MPI (вызов MPI_Init). При этом данная программа запускается на N узлах кластера
  • Параллельная часть
    • Определение количества задействованных узлов (MPI_Comm_size)
    • Определение номера данного узла (MPI_Comm_rank)
    • Проведение вычислений, с возможным взаимодействием между узлами через (MPI_Send, MPI_Recv)
    • Для процессов с номером узла, отличным от 0 - посылка итогового результата для головного узла "0"
  • Для узла "0" обобщение полученных от других узлов результатов.

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

Ссылки

Примеры использования MPI, учебные курсы

  • "One-step Tutorial: MPI: It's easu to get started" [eng] - краткое введение в LAM MPI.
  • "MPI Tutorials: Getting started with LAM/MPI" [eng] - описание использования LAM MPI.
  • Introduction to MPI [eng] - краткий online курс по применению MPI.
  • Методическое пособие по курсу "Многопроцессорные системы и параллельное программирование", В.Н. Дацюк, А.А. Букатов, А.И. Жегуло, Ростовский государственный университет.
  • "Параллельный стиль", К. Михайленко, [rus]. Статья о параллельных вычислениях, простые примеры MPI-программ вычисления интеграла методом трапеций на C и Fortran.

Документация

  • Using MPI-2 [eng] - краткое описание особенностей MPI2.
  • Подборка ссылок на документацию по MPI

Утилиты

Установка и настройка

  • Вычислительный кластер под FreeBSD [rus] - Установка и настройка Lam-mpi на FreeBSD. Описана установка MPI, программы - монитора к кластеру и процесс проверки функционирования MPI.

Прочее

  • Fault-Tolerant MPI - вопросы о сохранении состояния вычислений и возможности продолжать их при сбое узлов кластера.
  • One-Sided Communications with MPI-2 - описание принципов работы с общей памятью в MPI-2.

Дата создания: 2006-05-24 12:54:27 (Фетисов Н. А. (naf))
Последнее изменение: 2006-05-24 12:55:21 (Фетисов Н. А. (naf))
Владелец: Фетисов Н. А. (naf)
Версия: 2  Все версии


  Не показывать комментарии



Wiki::Admin   Оглавление  Карта раздела  Изменения за сутки  Изменения за неделю  Изменения за месяц



Valid XHTML 1.0 Transitional  Valid CSS!  [Valid RSS]