Publication | Open Access
IMPI: Making MPI interoperable
34
Citations
5
References
2000
Year
EngineeringComputer ArchitectureSoftware EngineeringSoftware AnalysisFormal VerificationSystem IntegrationModel Driven ArchitectureMessage Passing InterfaceConcurrency (Computer Science)Systems EngineeringParallel ComputingInteraction ProtocolImpi Conformance TesterHybrid ProgrammingMessage PassingConcurrent ProgrammingComputer EngineeringImpi ImplementationsComputer ScienceDistributed ComputingProgram AnalysisFormal MethodsParallel ProgrammingSystem Software
The Message Passing Interface (MPI) is the de facto standard for writing parallel scientific applications in the message passing programming paradigm. Implementations of MPI were not designed to interoperate, thereby limiting the environments in which parallel jobs could be run. We briefly describe a set of protocols, designed by a steering committee of current implementors of MPI, that enable two or more implementations of MPI to interoperate within a single application. Specifically, we introduce the set of protocols collectively called Interoperable MPI (IMPI). These protocols make use of novel techniques to handle difficult requirements such as maintaining interoperability among all IMPI implementations while also allowing for the independent evolution of the collective communication algorithms used in IMPI. Our contribution to this effort has been as a facilitator for meetings, editor of the IMPI Specification document, and as an early testbed for implementations of IMPI. This testbed is in the form of an IMPI conformance tester, a system that can verify the correct operation of an IMPI-enabled version of MPI.
| Year | Citations | |
|---|---|---|
Page 1
Page 1