1.3. Product description

The MPT package contains the following components:

MPI is a standard specification for message passing libraries, allowing portable message passing programs in the Fortran and C languages. MPI was created by the Message Passing Interface Forum (MPIF). MPIF is not sanctioned or supported by any official standards organization. Its goal was to develop a widely used standard for writing message passing programs. The implementation of this standard includes a library (libmpi.a), a run-time command (mpirun(1)), and a library that allows profiling of message passing applications (libpmpi.a). On UNICOS systems, the profiling functionality is included in libmpi.a.

PVM is a software project that was developed jointly by Oak Ridge National Laboratories (ORNL), the University of Tennessee, and Emory University. PVM consists of a main library, a user-level daemon (pvmd3), a console (pvm(1)), and some additional commands and libraries. The main PVM library name is libpvm3.a.

The PVM and MPI libraries provide communications and synchronization functions that are necessary for writing distributed applications. For example, you can add calls that cause one task to send a message to another, or to receive a message, or to wait until another task is finished. The PVM software supports heterogeneous systems by automatically converting data. The MPI software is supported between UNICOS systems of the same architecture and within a partition on UNICOS/mk systems.

SHMEM message passing is another form of distributed programming. It differs from PVM and MPI message passing in that it uses one-sided communication (that is, one processing element (PE) on a Cray T3E system can send or receive data from another PE without the knowledge of that PE).

To use PVM, MPI, or SHMEM message passing directly, you must change your source code to add the appropriate calls.

MPI support for Cray T3D systems is provided through a third-party product available from Edinburgh Parallel Computing Centre (EPCC).