The Message Passing Interface (MPI) standard provides a uniform Application Programmers Interface (API) that abstracts the underlying hardware from the parallel applications. Recent research efforts have extended the MPI standard to Java either through wrapper implementations or as subsets of larger parallel infrastructures. In this paper, we describe JMPI, a reference implementation of MPI developed at the Architecture and Real-Time Laboratory at the University of Massachusetts Amherst. In this implementation, we explore using Java’s Remote Method Invocation (RMI), Object Serialization and Introspection technologies for message passing. We discuss the architecture of our implementation, adherence to emerging standards for MPI bindings for Java, our performance results, and future research direction.
Steven Morin, Israel Koren, C. Mani Krishna