The library is intended for networks and clusters of workstations behaving as i f they were a single parallel machine and for dedicated distributed memory machines. It is already available for the IBM SP2, and for networks of popular workstations (DEC, HP, IBM, SGI, Sun); a version for the Cray T3D is being prepared.
In order to achieve portability across all these platforms, the library is base d on PVM (Parallel Virtual Machine). PVM was chosen for the initial release because of its widespread availability and growing popularity. Howver, the explicit dependence upon PVM is minimal. The library principally makes use of the Basic Linear Algebra Communication Subprograms (BLACS) for message passing. It assumes that the logical (virtual) topology is a two-dimensional grid of processors which are then allocated to available physical processors. Subsequent calls to library routines execute on each logical processor and co-operate to solve the problem. The model of parallelism adopted throughout the library is the Single Program Multiple Data Model (SPMD) to facilitate portability, ease of use and future design developments. A number of the utility routines are designed to shield users from PVM, or any other underlying message passing system, and to support the aim of making the library easy to use. A version based on MPI (Message Passing INterface) is planned for preparation in the near future.
The first release includes the following routines: