3.1 Prerequisites
The following base libraries are needed:
-
BLAS
- [11, 12, 18] Many vendors provide optimized versions of BLAS; if no
vendor version is available for a given platform, the ATLAS software
(math-atlas.sourceforge.net) may be employed. The reference BLAS
from Netlib (www.netlib.org/blas) are meant to define the standard
behaviour of the BLAS interface, so they are not optimized for any
particular plaftorm, and should only be used as a last resort. Note that
BLAS computations form a relatively small part of the MLD2P4/PSBLAS
computations; they are however critical when using preconditioners based
on MUMPS, UMFPACK or SuperLU third party libraries. Note that
UMFPACK requires a full LAPACK library; our experience is that
configuring ATLAS for building full LAPACK does not work in the
correct way. Our advice is first to download the LAPACK tarfile from
www.netlib.org/lapack and install it independently of ATLAS. In this
case, you need to modify the OPTS and NOOPT definitions for including
-fPIC compilation option in the make.inc file of the LAPACK library.
-
MPI
- [17, 23] A version of MPI is available on most high-performance computing
systems.
-
PSBLAS
- [13, 15] Parallel Sparse BLAS (PSBLAS) is available from
github.com/sfilippone/psblas3; version 3.5.0 (or later) is required.
Indeed, all the prerequisites listed so far are also prerequisites of PSBLAS.
Please note that the four previous libraries must have Fortran interfaces compatible with
MLD2P4; usually this means that they should all be built with the same compiler as
MLD2P4.