next up previous
Next: Algorithm Architecture on Up: Parallel Implementations on Previous: Algorithm Architecture on

PVM

The Parallel Virtual Machine (PVM) is one of the most popular message passing models. PVM is public domain and can be obtained free of charge via ftp [4]. PVM makes a heterogeneous network of parallel and serial UNIX computers to appear as a single concurrent computational resource.

Controlled interaction of a heterogeneous set of workstations is done via TCP/IP sockets or native MPP communication protocols, with the possibility of dynamically adding more resources to the network as they are needed.

Applications view PVM as a general and flexible parallel computing system that supports the message-passing paradigm. PVM is not restricted to specific architectures. Application programs may have arbitrary control and dependency structures with arbitrary -- and even dynamical -- relationships among the parallel processes. This allows the most general form of MIMD (resp. SPMD-) programming. Task granularity, communication frequency and load balancing are completely at the disposal of the programmer. There exist library calls for blocking and non-blocking send and receive operations. Groups of processes can be defined for broadcasts, barrier synchronization and other group functions. Release 3.3 provides features for the efficient use of architecture-dependent and low-level communication modes on parallel systems.





WWW-Administration
Tue May 16 19:29:30 MET DST 1995