The first public demonstration of the Interoperable Message Passing Interface (IMPI) took place at the Supercomputing 2000 (SC'2000) Conference held in Dallas, Texas the week of Nov 4, 2000. IMPI is a generalization of the Message Passing Interface (MPI), the de facto standard for writing parallel scientific applications in the message passing programming paradigm, now provided by all high performance computer vendors. IMPI specifies a protocol for interoperability among vendor MPI implementations, thereby extending the environments in which parallel jobs can be run to heterogeneous clusters. Staff members of ACMD's High Performance Computing and Visualization Group served as the facilitators for the development of the IMPI standard, convening meetings, editing the specifications document, and developing comformance tests.
The participants in the SC'2000 demonstration were Hewlett Packard, MPI Software Technology, and the Laboratory for Scientific Computation at the University of Notre Dame. Each participant ran their own implementation of the IMPI protocols on their computing platform, communicating with the other implementations in real time on the floor of the SC'2000 exhibit center.
The IMPI protocols were designed by a steering committee of current implementors of MPI. These protocols handle the demanding task of maintaining interoperability among all IMPI implementations while allowing for the independent evolution of the collective communication algorithms. No changes to user MPI code is required to use IMPI.
The NIST IMPI conformance tester is a web-based system that exercises all aspects of the IMPI protocol. Vendors test their IMPI implementation by connecting their MPI implementation to the to the NIST IMPI web page.