Users of these systems employ the module command to select and manage the supported software environment they need. The software supported on the NCAR systems differs to some extent.
The lists of Cheyenne and Casper modules are extensive. If your application requires a different library or library version, contact the NCAR Research Computing help desk for assistance. A few of the more important libraries are described below.
The netCDF libraries provide a common file format for many applications run on NCAR supercomputers. The hdf5 library is used interoperably with netCDF. Library pio is often used by CESM.
Several Python versions and corresponding libraries are available. Users can augment their own environments by following the instructions on this documentation page for how to load Python and its virtual environments.
Dask and MPI for Python are available through the NCAR Python Library. MATLAB is available by loading the matlab module. See this documentation for how to use MATLAB's parallel computing capabilities.
NCL and GrADS are individual modules. WRF-python and matplotlib are available upon loading Python and one of its virtual environments as described on this documentation page. Python users will find matplotlib, bokeh, plotly, and many other libraries they can install in their own virtual environments.
The ESMF libraries include standalone software for grid remapping, as does NCL.
MKL is Intel’s Math Library Kernel. FFTW is the acronym for Fastest Fourier Transform in the West. PETSc is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.
CUDA is available on Casper via the module load cuda command. CUDA is a parallel computing platform and programming model developed by NVIDIA for general computing on GPUs.
OpenACC framework comes with PGI. You can load the pgi module on Casper to access the OpenACC-aware compiler. OpenACC is a directive-based programming model that moves the computational workload from CPU to GPU.
OpenCL is a software framework for writing programs that can execute across heterogeneous platforms such as CPUs, GPUs, DSPs, and FPGAs. It is essentially a unique programming language for developing applications and APIs to run on and control the devices. OpenCL is based on the C99 and C++, version 11, programming languages.
TensorFlow and PyTorch are available via any of NCAR’s supported Python modules, in the default version of the NCAR Python Library. Loading the latest version of Python provides the latest “learning” libraries.