Next: Message-Passing Interface (MPI) in
Up: Message Passing Libraries in
Previous: Message Passing Libraries in
Contents
Parallel Virtual Machine (PVM) in Java
PVM, developed at Oak Ridge National Laboratory, is a message-passing
system that permits a heterogeneous collection of networked computing
systems to be used as a single large parallel machine.
Thus large computational problems can be solved more cost
effectively by using the aggregate power and memory of many
computers.
PVM consists of two parts: a daemon process, pvmd, that
any user can install on a machine, and a user library that contains
routines for initiating processes on other machines. PVM provides a
rich set of dynamic resource management and process control
functions (eg., load balancing). It also allows the development of
fault-tolerant applications and has good
interoperability between heterogeneous hosts.
PVM supports programs written in C, C++, and Fortran.
Currently there are two groups working on making PVM support programs
written in Java.
JavaPVM (or jPVM) [#!JAVAPVM!#] is an interface written using the
Java native methods capability which allows Java applications to use
the Parallel Virtual Machine (PVM) software.
Since it is using native methods, it limits cross-platform
portability.
JPVM [#!JPVM!#] is a pure Java implementation of PVM. Therefore unlike
JavaPVM, it is better matched to Java programming styles and the
standardization of the JVM makes the JPVM code much simpler to
maintain across heterogeneous machine.
The performance is poor compared to JavaPVM.
The detail comparison of communication benchmark of native PVM,
JavaPVM, and JPVM is reported in [#!YALAMA98!#].
Next: Message-Passing Interface (MPI) in
Up: Message Passing Libraries in
Previous: Message Passing Libraries in
Contents
Bryan Carpenter
2004-06-09