The BLACS, or "Basic Linear Algebra Communication Subprograms", form a linear algebra-oriented message passing interface that may be implemented efficiently and uniformly across a large range of distributed memory platforms.
The length of time required to implement efficient distributed memory algorithms makes it impractical to rewrite programs for every new parallel machine. The BLACS exist in order to make linear algebra applications both easier to program and more portable. It is for this reason that the BLACS are used as the communication layer of the distributed memory linear algebra package SCALAPACK, for instance.
MPI is one example of a distributed memory system. A program written at the BLACS level can run on under MPI. The same program should run correctly on systems that use other distributed memory systems. The key is that on each system, the installation of the BLACS library takes into account the interfact between the standard BLACS routines and the local distributed memory system.
MPI is a FORTRAN90 example directory which demonstrates the use of MPI for parallel computing in distributed memory systems.
PBLAS is a FORTRAN90 example directory which demonstrates the use of the PBLAS, or "parallel BLAS" routines.
SCALAPACK is a FORTRAN90 example directory which demonstrates the use of SCALAPACK.
BLACS_PRB is a simple test in which a grid is set up, and each process reports in to the master process:
You can go up one level to the FORTRAN90 source codes.