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.