next up previous contents
Next: PC Platforms Up: mpiJava Implementations Previous: mpiJava Implementations   Contents


UNIX Platforms

The development and testing of mpiJava was undertaken on various Sun and SGI UNIX platforms using MPICH. Interfacing Java to MPI is not always trivial. In earlier implementations we often saw low-level conflicts between the Java runtime and the interrupt mechanisms used in the MPI implementations. The situation is improving as the JDK matures, in particular version 1.2 allows the use of green or native threads. In JDK 1.1, Java threads are implemented on Solaris with a user-level thread package known as green threads. In JDK 1.2, green threads are the default, but the developer can optionally use Solaris native threads for Java threads. With the green threads, a Java program creates and controls multiple threads executing within a single CPU. On the other hand, native threads make it possible for Java programs to take advantage of multiple CPUs on a single machine, are more scalable, and work better with third-party native methods. As a by-product this new native thread feature has eliminated the interrupt problem that we encountered with earlier releases of the JDK. mpiJava is now stable on UNIX platforms using MPICH and JDK 1.2 .


next up previous contents
Next: PC Platforms Up: mpiJava Implementations Previous: mpiJava Implementations   Contents
Bryan Carpenter 2004-06-09