Common Open Source Software Base

BC Project: FY13-01
Date of Policy: 13 Jan 2014
Last Updated: 08 Jun 2020 (see Revision Log)

This policy requires a large collection of open source software be available on all HPCMP allocated machines. Each package in the collection will have the same version and configuration across all participating centers. The entire collection is grouped into the following five distinct categories:

Open Source Math-Scientific Libraries

  • ARPACK-NG: (Solution of Eigenvalues/Eigenvectors - both serial and parallel)
  • Dakota: Optimization and Uncertainty Quantification
  • FFTW: 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: Numerical linear algebra packages
  • ScaLAPACK: Subset of parallelized LAPACK routines
  • GSL: C/C++ library with a wide variety of mathematical routines

For access and other details, click on additional information.

Open Source High Productivity Languages

  • Python: General purpose scripting language
  • NumPy: Numerical arrays and linear algebra in Python
  • MPI4Py: Python bindings for MPI
  • PyMPI: Python message passing interface
  • SciPy: Scientific Python
  • IPython: High performance tools for interactive as well as parallel computing
  • Octave: MATLAB clone
  • Matplotlib: Scientific 2-D and 3-D plotting

For access and other details, click on additional information.

Open Source Performance and Profiling Tools

  • PAPI: Consistent interface to hardware counters and events
  • SCALASCA: Scalable trace analysis package
  • TAU: Performance analysis of parallel applications
  • Valgrind: Memory management analysis and profiling

For access and other details, click on additional information.

Open Source Graphics Packages

  • NCAR Graphics: Collection of graphics libraries to support the display of scientific data.

For access and other details, click on additional information.

Open Source Utilities

The suite of utilities covers the following four distinct areas:

  • Development and Build
    - autoconf, automake, Bison, Boost C++, CMake
  • Source Repository/ Revision Control
    - cvs (GNU), subversion, git
  • Archive and Compression
    - tar (GNU), gzip, gunzip (GNU), bzip2, bunzip2
  • Libraries for Data Models and Formats
    - HDF5, NetCDF, XDMF

For access and other details, click on additional information.

All packages and tools included in the top four categories are stacked in a single package called CSE (Computational Science Environment). CSE also includes a subset of the open source utilities listed above. These include: Boost C++, CMake, git and all 3 libraries for data models and formats. The CSE Quick Reference Guide lists all packages included in CSE. The reference guide also includes brief descriptions of each package included in CSE as well as instructions on how to place any package in CSE in a user's computational environment.

All packages and libraries in CSE are built on each machine with the GNU Compiler Collection (GCC). The version of a GNU compiler is the version loaded by default from the module command. A subset of the CSE applications are also built with the Intel compiler. Please see the CSE Quick Reference Guide for more information about the Intel build. In special cases where there is need to build a portion or all of the CSE package with an alternate compiler, users are asked to place a request to the HPC Help Desk.


Revision Log
Date Revision
08 Jun 2020Moved COST to CSE (Computational Science Environment)
19 Dec 2018Replaced the description of Dakota from "Non-linear Optimization" to "Optimization and Uncertainty Quantification"
06 Sep 2018BCT Team Audit - Added Dakota to the category "Open Source Math-Scientific Libraries"
07 Jul 2016Incorporated COST Quick Reference Guide in policy
04 Nov 2015Request to build a portion or all of COST with an alternate compiler
24 Aug 2015Added PARPACK to the category "Open Source Math-Scientific Libraries"
08 Sep 2014Added new category "Open Source Graphics Packages"
16 Jul 2014Added MPI4PY to the category "Open Source High Productivity Languages"
21 Jan 2014Combined 4 BC policies into one comprehensive policy