MPI
MPI. Message Passing Interface (интерфейс передачи сообщений). MPI является наиболее распространённым стандартом интерфейса обмена данными в параллельном программировании, существуют его реализации для большого числа компьютерных платформ. MPI предоставляет программисту единый механизм взаимодействия ветвей внутри параллельного приложения независимо от машинной архитектуры (однопроцессорные/многопроцессорные с общей/раздельной памятью), взаимного расположения ветвей (на одном процессоре или на разных). В числе основных достоинств MPI по сравнению с интерфейсами других коммуникационных библиотек обычно называют следующие его возможности:
- возможность использования в языках Фортран, Си, Си++;
- предоставление возможностей для совмещения обменов сообщениями и вычислений;
- предоставление режимов передачи сообщений, позволяющих избежать излишнего копирования информации для буферизации;
- широкий набор коллективных операций допускающих гораздо более эффективную реализацию параллельной программы;
- удобные средства именования адресатов сообщений, упрощающие разработку стандартных программ или разделение программы на функциональные блоки.
Однако разработчики MPI подвергаются суровой критике за то, что интерфейс является слишком громоздким и сложным для прикладного программиста. Интерфейс оказался сложным и для реализации.
В итоге в настоящее время практически не существует реализаций MPI, в которых в полной мере обеспечивается совмещение обменов с вычислениями.
Библиографический список
- Википедия. Message Passing Interface
- Лаборатория Параллельных Информационных Технологий. "MPI: The Message Passing Interface"
- Message Passing Interface Forum
0