Common Set of Open Source Math Libraries

BC Project: FY06-01
Date of Policy: 12 Oct 2005
Last Updated: 19 Feb 2015

This policy defines a set of open source math libraries, each having the same version and configuration across all participating centers. The suite of maintained packages consists of:

  • ARPACK: Solution of Eigenvalues/Eigenvectors
  • PARPACK: Parallel ARPACK
  • FFTW: Library for computing Discrete Fourier Transforms
    • Both MPI and non-MPI versions are maintained
  • PETSc: Suite of scientific computing routines
  • SuperLU: Direct solution of sparse linear systems of equations
  • LAPACK: Software library of numerical linear algebra routines
  • ScaLAPACK: Subset of parallelized LAPACK routines
  • BLAS: Basic linear algebra routines
    • ATLAS
    • GotoBLAS
  • GSL: C/C++ library with a wide variety of mathematical routines

Change notification

In accordance with BC policy FY05-01, Multiple-Version Software, a minimum of three versions will be maintained. New versions of supported libraries will initially be installed as non-default. Notification will be sent to center help desks announcing the new version and describing how to access it and use it. The help desks will be given a minimum of 2 weeks notice to set the new version as the default version. The old version will not be deleted, but notice will be sent to help desks describing how users can continue to use the old version. It is the responsibility of the individual centers to notify their users of any change. Old versions will only be deleted when there are three newer versions available.

Native Libraries

The packages ScaLAPACK, LAPACK and/or ATLAS will not be installed whenever a system includes native libraries such as PESSL (Parallel ESSL) or MKL (Math Kernel Libraries) that fully provide the same functionality and interface. However, if a request is made to have ScaLAPACK, LAPACK and/or ATLAS available on a system, then these packages will also be installed.

Access to Libraries

All information on how to access any of the supported libraries is provided in "BC Common Capability Open Source Math Libraries."