next up previous contents
Next: mpiJava-based Implementation Up: A low-level communication library Previous: Encoding   Contents


Implementations

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.



Subsections

Bryan Carpenter 2004-06-09