mpiJava 1.2: API Specification
Bryan Carpenter, Geoffrey Fox,
Sung-Hoon Ko, Sang Lim
Northeast Parallel Architectures Centre,
111 College Place,
Syracuse, New York 13244-410
This document defines the API of mpiJava, a Java language
binding for MPI 1.1.
The document is not a standalone specification of the behaviour of
MPI--it is meant to be read in conjunction with the MPI standard
document . Subsections are laid out in the same way
as in the standard document, to allow cross-referencing. Where the
mpiJava binding makes no significant change to a particular section of
the standard document, we will just note here that there are no special
issues for the Java binding. This does not mean that the corresponding
section of the standard is irrelevant to the Java binding--it may mean
it is 100% relevant! Where practical the API is modelled on the MPI
C++ interface defined in the MPI standard version 2.0 .
Changes to the mpiJava 1.1 interface:
The current API is viewed as an interim measure. Further significant
changes are likely to result from the efforts of the Message-passing
working group of the Java Grande Forum.
- The MPI.OBJECT basic type has been added.
- The interface for MPI.Buffer_detach has been corrected.
- The API of User_function has been changed.
- Attributes cached in communicators are now assumed to have integer values.
Attr_put and Attr_delete have been removed.
- The interface to Cartcomm.dimsCreate has been corrected.
- Errorhandler_set, Errorhandler_get have changed from
static members of MPI to instance methods on Comm.
- The method Is_null has been added to class Comm.
- The initialization method MPI.Init now returns the command
line arguments set by MPI.
- MPI exception classes are now specified to be subclasses of
MPIException rather than IOException. Methods are now
declared to throw MPIException (see section 8).