Параллельное программирование с использованием технологии MPI — различия между версиями

Материал из Department of Theoretical and Applied Mechanics
Перейти к: навигация, поиск
(Технология MPI)
(top)
Строка 1: Строка 1:
 
[[Кафедра ТМ]] > [[Программирование]]>[[Параллельное программирование с использованием технологии MPI]] <HR>
 
[[Кафедра ТМ]] > [[Программирование]]>[[Параллельное программирование с использованием технологии MPI]] <HR>
 +
==Краткое описание==
 +
{{Ложное перенаправление|OpenMPI}}
 +
'''Message Passing Interface''' (MPI, интерфейс передачи сообщений) — программный интерфейс ([[API]]) для передачи [[информация|информации]], который позволяет обмениваться сообщениями между процессами, выполняющими одну задачу. Разработан [[Гроупп, Уильям|Уильямом Гроуппом]], {{Translation|:en:Ewing Lusk|Ласк, Эвин|Эвином Ласком}} и другими.
 +
 +
MPI является наиболее распространённым стандартом интерфейса обмена данными в
 +
[[Параллельное программирование|параллельном программировании]], существуют его реализации для большого числа компьютерных платформ. Используется при разработке программ для [[Кластер (группа компьютеров)|кластеров]] и [[суперкомпьютер]]ов. Основным средством коммуникации между [[процесс (информатика)|процессами]] в MPI является передача сообщений друг другу.
 +
 +
Стандартизацией MPI занимается [[MPI Forum]]. В стандарте MPI описан интерфейс передачи сообщений, который должен поддерживаться как на платформе, так и в [[Прикладное программное обеспечение|приложениях]] пользователя. В настоящее время существует большое количество бесплатных и коммерческих реализаций MPI. Существуют реализации для языков [[Фортран]] 77/90, [[Java]], [[Си (язык программирования)|Си]] и [[Си плюс плюс|Си++]].
 +
 +
В первую очередь MPI ориентирован на системы с [[Массивно-параллельная архитектура|распределенной памятью]], то есть когда затраты на передачу данных велики, в то время как [[OpenMP]] ориентирован на системы с общей памятью (многоядерные с общим кешем). Обе технологии могут использоваться совместно, чтобы оптимально использовать в кластере многоядерные системы.
  
 
==Технология MPI==
 
==Технология MPI==

Версия 14:10, 7 декабря 2015

Кафедра ТМ > Программирование>Параллельное программирование с использованием технологии MPI

Краткое описание

Шаблон:Ложное перенаправление Message Passing Interface (MPI, интерфейс передачи сообщений) — программный интерфейс (API) для передачи информации, который позволяет обмениваться сообщениями между процессами, выполняющими одну задачу. Разработан Уильямом Гроуппом, Шаблон:Translation и другими.

MPI является наиболее распространённым стандартом интерфейса обмена данными в параллельном программировании, существуют его реализации для большого числа компьютерных платформ. Используется при разработке программ для кластеров и суперкомпьютеров. Основным средством коммуникации между процессами в MPI является передача сообщений друг другу.

Стандартизацией MPI занимается MPI Forum. В стандарте MPI описан интерфейс передачи сообщений, который должен поддерживаться как на платформе, так и в приложениях пользователя. В настоящее время существует большое количество бесплатных и коммерческих реализаций MPI. Существуют реализации для языков Фортран 77/90, Java, Си и Си++.

В первую очередь MPI ориентирован на системы с распределенной памятью, то есть когда затраты на передачу данных велики, в то время как OpenMP ориентирован на системы с общей памятью (многоядерные с общим кешем). Обе технологии могут использоваться совместно, чтобы оптимально использовать в кластере многоядерные системы.

Технология MPI

См. также