31
коммуникационная библиотека PVM (Parallel Virtual Machine),
разработанная в Oak Ridge National Laboratory.
В 1994 г. был принят стандарт механизма передачи сообщений MPI
(Message Passing Interface) [7]. Он готовился с 1992 по 1994 гг. группой
Message Passing Interface Forum, в которую вошли представители более
чем 40 организаций из Америки и Европы. Основная цель, которую
ставили перед собой разработчики MPI – это обеспечение полной
независимости приложений, написанных с использованием MPI, от
архитектуры многопроцессорной системы, без какой-либо существенной
потери производительности. По замыслу авторов это должно было стать
мощным стимулом для разработки прикладного программного
обеспечения и стандартизованных библиотек подпрограмм для
многопроцессорных систем с распределенной памятью. Подтверждением
того, что эта цель была достигнута, служит тот факт, что в настоящее
время этот стандарт поддерживается практически всеми производителями
многопроцессорных систем. Реализации MPI успешно работают не только
на классических MPP системах, но также на SMP системах и на сетях
рабочих станций (в том числе и неоднородных).
MPI – это библиотека функций, обеспечивающая взаимодействие
параллельных процессов с помощью механизма передачи сообщений.
Поддерживаются интерфейсы для языков C и FORTRAN. В последнее
время добавлена поддержка языка C++. Библиотека включает в себя
множество функций передачи сообщений типа точка-точка, развитый
набор функций для выполнения коллективных операций и управления
процессами параллельного приложения. Основное отличие MPI от
предшественников в том, что явно вводятся понятия групп процессов, с
которыми можно оперировать как с конечными множествами, а также
областей связи и коммуникаторов, описывающих эти области связи. Это
предоставляет программисту очень гибкие средства для написания
эффективных параллельных программ. В настоящее время MPI является