Next: mpiJava-based Implementation
Up: A low-level communication library
Currently we have three different implementations of mpjdev:
mpiJava-based, multithreaded, and LAPI-based. We have also proposed an
implementation based on Jini.
These implementation have their own characteristic signatures.
The mpiJava-based implementation uses MPI as communication protocol via JNI
calls. This implementation is platform dependent due to use of JNI.
Multithreaded implementation assumes HPspmd ``processes'' are implemented as
Java threads, and uses Java thread synchronization mechanisms
for communication. This provides maximum portability by using pure Java.
LAPI implementation is specific to one system, the IBM SP.
Design goals of the proposed Jini implementation are that the system should be
as easy to install on distributed systems as we can reasonably make it,
and that it be sufficiently robust to be usable in an Internet environment.
It could use Java sockets for underlying communication.