HPJava Home Page

mpiJava
HPJava language
SC '02 demo

Project flier

Java HPC Course
HPspmd lectures


Community Grids
Bloomington photos

Java Grande Home
Numerics working group


PCRC Home



Viewing these pages

mpiJava Home Page

mpiJava is an object-oriented Java interface to the standard Message Passing Interface (MPI). The interface was developed as part of the HPJava project, but mpiJava itself does not assume any special extensions to the Java language - it should be portable to any platform that provides compatible Java-development and native MPI environments.

mpiJava 1.2 provides the full functionality of MPI 1.1. It is implemented as a set of JNI wrappers to native MPI packages. Platforms currently supported include Solaris using MPICH, LAM or SunHPC-MPI, Linux using MPICH or LAM, and IBM SP machines. The Java API is defined in the document "mpiJava 1.2: API Specification". A less complete API specification is available in Javadoc form.

The releases of mpiJava include complete source, makefiles, configuration scripts, compiled libraries for WMPI, release test codes (based on the IBM MPI test suite), example applications, javadoc documentation, and installation and usage notes.

Version 1.2.5 was released in January 2003.

This version takes advantage of features of Sun J2SE 1.4 to avoid some reliablity problems that have afflicted earlier releases. It is better tested on more platforms, and believed to be more reliable, than any earlier releases. See the mpiJava 1.2.5 README file for further information.

Wider issues relating to Java-MPI systems may be addressed in the java-mpi discussion list.

As of early 2007, you may find ongoing developments reported at the mpiJava Community Portal.

Bibliography

  • Bryan Carpenter, Vladimir Getov, Glenn Judd, Tony Skjellum and Geoffrey Fox. MPJ: MPI-like Message Passing for Java. Concurrency: Practice and Experience, Volume 12, Number 11. September 2000.
    PostscriptPDF HTML
  • Mark Baker and Bryan Carpenter. Thoughts on the structure of an MPJ reference implementation. October 1999.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox, Sung-Hoon Ko and Sang Lim. mpiJava 1.2: API Specification. October 1999.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox, Sung Hoon Ko and Sang Lim. Object Serialization for Marshalling Data in a Java Interface to MPI. Revised version, August 1999.
    PostscriptPDF HTML
  • Mark Baker, Bryan Carpenter, Geoffrey Fox, Sung Hoon Ko, and Sang Lim. mpiJava: An Object-Oriented Java interface to MPI. Presented at International Workshop on Java for Parallel and Distributed Computing, IPPS/SPDP 1999, San Juan, Puerto Rico, April 1999.
    PostscriptPDF HTML
  • Bryan Carpenter, Vladimir Getov, Glenn Judd, Tony Skjellum and Geoffrey Fox. MPI for Java - Position Document and Draft API Specification. Java Grande Forum Technical Report JGF-TR-03. November 1998.
    PostscriptPDF HTML
  • Mark Baker, Bryan Carpenter, Sung Hoon Ko, and Xinying Li. mpiJava: A Java interface to MPI. Presented at First UK Workshop on Java for High Performance Network Computing, Europar 1998.
    PostscriptPDF HTML
  • Bryan Carpenter, Geoffrey Fox, Xinying Li, and Guansong Zhang. A draft Java binding for MPI. November 1997.
    PostscriptPDF HTML

Bryan Carpenter, (dbc@ecs.soton.ac.uk). Last updated May 2007.