Software

Under this area you will find information about the installed software and applications on HPC2N’s systems, as well as some information about accessing and using the various pieces of software and applications.

Note that is is NOT a complete list. Login to Kebnekaise and run the command

ml spider

to get a full list.

If there is a program you need and it is not installed, you can either install it yourself (check if it can easily be installed with Easybuild) or ask (mail support at support@hpc2n.umu.se) if it can be installed on Kebnekaise. If the program needs a license you will have to provide that yourself. If the license requires a license server, that will have to be provided either by yourself or through your deparment or similar.

Most of the software is accessed through the module system. You can read more about using modules on our ‘The modules system’ page. When you are looking for a piece of software, try running either

module avail

or

ml spider

to see if it is installed.

You can also try with

ml spider SOFTWARE

to see if the software named SOFTWARE is installed as a module.

For information about versions, login to the cluster (Kebnekaise) and run

ml spider SOFTWARE

where SOFTWARE is the name of the software.

Newer versions of the provided software will be installed regularly. However, if you need a new version quickly, please send an email to support@hpc2n.umu.se.

More detailed information about using numerical and MPI libraries can be found on our Libraries page.

Application software

Program Description
Abinit Abinit is a freely available program to find the total energy, charge density
and electronic structure of systems.
External info: ABINIT
ACTC ACTC converts independent triangles into triangle strips or fans.
External info: ACTC Triangle Consolidator
AlphaFold AlphaFold can predict protein structures with atomic accuracy even where
no similar structure is known.
External info: deepmind/alphafold on GitHub
AMBER AMBER is a molecular dynamics software package that simulates the
Amber force fields.
External info: The Amber Home Page
Apptainer Apptainer is a is a free, cross-platform and open-source
computer program that performs operating-system-level virtualization also
known as containerization.
External info: Apptainer
ASE ASE is an Atomistic Simulation Environment written in the Python
programming language with the aim of setting up, steering, and analyzing
atomistic simulations.
External info: Atomic Simulation Environment
Caffe Caffe is a deep learning framework made with expression, speed, and
modularity in mind. It is developed by the Berkeley Vision and Learning
Center (BVLC) and community contributors.
External info: Caffe on GitHub
Comsol COMSOL Multiphysics is a general-purpose software platform, based on
advanced numerical methods, for modeling and simulating.
External info: COMSOL
CP2K
External info: CP2K Open Source Molecular Dynamics
CUDA CUDA (formerly Compute Unified Device Architecture) is a parallel
computing platform and programming model created by NVIDIA and
implemented by the graphics processing units (GPUs) that they produce.
CUDA gives developers access to the virtual instruction set and memory
of the parallel computational elements in CUDA GPUs.
External info: CUDA Toolkit
Dalton Dalton is an ab initio quantum chemistry computer program. It is capable
of calculating various molecular properties using the Hartree–Fock, MP2,
MCSCF and coupled cluster theories.
External info: Dalton/LSDalton program - Home
FDTD_Solutions(Lumerical) High performance FDTD-method Maxwell solver for the design, analysis
and optimization of nanophotonic devices, processes and materials.
External info: FDTD
galamost GALAMOST is a versatile molecular simulation package which is designed
to fully utilize computational power of graphics processing units (GPUs). It
is developed specially for coarse-graining simulations of polymeric systems
by including some latest techniques
External info: GALAMOST
GAMESS-US The General Atomic and Molecular Electronic Structure System (GAMESS)
is a general ab initio quantum chemistry package.
External info: Gordon Group/GAMESS Homepage
Gaussian Gaussian provides state-of-the-art capabilities for electronic
structure modeling.
External info: Gaussian.com
GPAW GPAW is a density-functional theory (DFT) Python code based on the
projector-augmented wave (PAW) method and the atomic
simulation environment (ASE).
External info: GPAW
Gromacs A molecular dynamics package primarily designed for biomolecular
systems such as proteins and lipids. It is a free software.
External info: GROMACS
GTDB-Tk A software toolkit for assigning objective taxonomic classifications
to bacterial and archaeal genomes based on the Genome Database
Taxonomy GTDB.
External info: GTDB-Tk
HDF5 HDF5 is a data model, library, and file format for storing and managing
data.
External info: The HDF Group
hwloc The Portable Hardware Locality (hwloc) software package provides a
portable abstraction (across OS, versions, architectures, …) of the
hierarchical topology of modern architectures, including NUMA memory
nodes, sockets, shared caches, cores and simultaneous multithreading.
It also gathers various system attributes such as cache and memory
information as well as the locality of I/O devices such as network
interfaces, InfiniBand HCAs or GPUs.
External info: Portable Hardware Locality (hwloc)
Julia Julia is a high-level, high-performance, dynamic programming language.
External info: The Julia Programming Language
MATLAB MATLAB is a numerical computing environment and fourth generation
programming language.
External info: MathWorks - Makers of MATLAB and Simulink
Molden MOLDEN is a pre- and post processing program of molecular and
electronic structure.
External info: MOLDEN
NAMD NAMD is a parallel molecular dynamics code designed for
high-performance simulation of large biomolecular systems.
External info: NAMD - Scalable Moldecular Dynamics
numactl The numactl program allows you to run your application program on
specific cpu’s and memory nodes. It does this by supplying a NUMA
memory policy to the operating system before running your program. The
libnuma library provides convenient ways for you to add NUMA memory
policies into your own program.
External info: numactl
Nextflow Nextflow enables scalable and reproducible scientific workflows using
software containers. It allows the adaptation of pipelines written in
the most common scripting languages.
External info: nextflow
NWChem NWChem is an ab initio computational chemistry software package which
also includes quantum chemical and molecular dynamics functionality.
External info: NWChem
OpenFOAM OpenFOAM (Open Field Operation and Manipulation) is primarily a C++
toolbox for the customisation and extension of numerical solvers for
continuum mechanics problems, including computational fluid dynamics
(CFD).
External info: OpenFOAM
OpenFOAM-Extend OpenFOAM (Open Field Operation and Manipulation) is primarily a C++
toolbox for the customisation and extension of numerical solvers for
continuum mechanics problems, including computational fluid dynamics
(CFD).
External info: OpenFOAM
OpenMM OpenMM is a high performance toolkit for molecular simulation. Use it as
a library, or as an application. It includes extensive language bindings for
Python, C, C++, and even Fortran.
External info: OpenMM
ORCA ORCA is a flexible, efficient and easy-to-use general purpose tool for
quantum chemistry with specific emphasis on spectroscopic properties
of open-shell molecules.
External info: ORCA Forum
PLINK PLINK is a free, open-source whole genome association analysis toolset,
designed to perform a range of basic, large-scale analyses in a
computationally efficient manner.
External info: plink
PLUMED PLUMED is an open source library for free energy calculations in molecular
systems which works together with some of the most popular molecular
dynamics engines. Free energy calculations can be performed as a
function of many order parameters with a particular focus on biological
problems, using state of the art methods such as metadynamics, umbrella
sampling and Jarzynski-equation based steered MD. The software, written
in C++, can be easily interfaced with both fortran and C/C++ codes.
External info: PLUMED
Python Python is a high-level, general-purpose programming language. Its design
philosophy emphasizes code readability with the use of significant
indentation. Python is dynamically typed and garbage-collected. It supports
multiple programming paradigms, including structured, object-oriented
and functional programming.
External info: python
QuantumESPRESSO Quantum ESPRESSO is an integrated suite of computer codes for
electronic-structure calculations and materials modeling at the nanoscale.
It is based on density-functional theory, plane waves, and pseudopotentials
(both norm-conserving and ultrasoft).
External info: QuantumESPRESSO
R R is a free software environment for statistical computing and graphics.
External info: The R Project for Statistical Computing
RELION RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a
stand-alone computer program that employs an empirical Bayesian
approach to refinement of (multiple) 3D reconstructions or 2D class
averages in electron cryo-microscopy (cryo-EM).
External info: RELION
Schrödinger The Schrödinger suite contains various computational chemistry and
molecular modelling codes.
External info: Schrödinger
Scikit-learn Scikit-learn integrates machine learning algorithms in the tightly-knit
scientific Python world, building upon numpy, scipy, and matplotlib. As a
machine-learning module, it provides versatile tools for data mining and
analysis in any field of science and engineering.
External info: scikit-learn
SciPy-bundle (Easybuild) Bundle of Python packages for scientific software
External info: SciPy-bundle
Scipion Scipion is an image processing framework to obtain 3D models of
macromolecular complexes using Electron Microscopy.
External info: Scipion
Siesta Siesta performs electronic structure calculations and ab initio molecular
dynamics simulations of molecules and solids.
External info: siesta
Singularity Singularity has been replaced by Apptainer.
External info: Singularity Container Technology & Services
Turbumole TURBOMOLE is a quantum chemical program package
External info: TURBOMOLE
VASP Performs ab-initio quantum-mechanical molecular dynamics (MD) using
pseudopotentials and a plane wave basis set.
External info: VASP
VMD VMD is a molecular visualization program for displaying, animating, and
analyzing large biomolecular systems using 3-D graphics and built-in
scripting.
External info: VMD - Visual Molecular Dynamics
WRF Advanced Research WRF (ARW) Modeling System is a flexible,
state-of-the-art atmospheric simulation system.
External info: Weather Research & Forecasting Model (WRF)

Compilers

Compiler Description
GCC GNU Compiler Collection. Has C, C++, Fortran 77, Fortran 90, and Fortran 95. Available for
serial, OpenMP, and MPI code for all languages, with the exception of Fortran 95 MPI
programs.
Part of several compiler toolchains.
External info: GCC, the GNU Compiler Collection
Intel Intel Compilers. Has C, C++, Fortran 77, Fortran 90, and Fortran 95. Available for serial,
OpenMP, and MPI code for all languages.
Part of several compiler toolchains.
External info: Intel Resource & Documentation Center

Debuggers and performance tools

Program Description
DDT The Number One Debugger for C, C++ and Fortran Threaded and Parallel Code.
Arm DDT is the number one server and HPC debugger in research, industry, and
academia for software engineers and scientists developing C++, C, Fortran parallel and
threaded applications on CPUs, GPUs, Intel and Arm. Arm DDT is trusted as a powerful
tool for automatic detection of memory bugs and divergent behavior to achieve
lightning-fast performance at all scales.
External info: ArmDDT
Cube Cube, which is used as performance report explorer for Scalasca and Score-P, is a
generic tool for displaying a multi-dimensional performance space consisting of the
dimensions (i) performance metric, (ii) call path, and (iii) system resource. Each dimension
can be represented as a tree, where non-leaf nodes of the tree can be collapsed or
expanded to achieve the desired level of granularity.
External info: Cube
Extrae Extrae is the core instrumentation package developed by the Performance Tools group
at BSC. Extrae is capable of instrumenting applications based on MPI, OpenMP,
pthreads, CUDA1, OpenCL1, and StarSs1 using different instrumentation approaches.
The information gathered by Extrae typically includes timestamped events of runtime
calls, performance counters and source code references. Besides, Extrae provides
its own API to allow the user to manually instrument his or her application.
External info: Extrae
Intel Inspector Intel Inspector XE is an easy to use memory error checker and thread checker for serial
and parallel applications
External info: Intel Inspector
itac The Intel Trace Collector is a low-overhead tracing library that performs event-based
tracing in applications. The Intel Trace Analyzer provides a convenient way to
monitor application activities gathered by the Intel Trace Collector through
graphical displays.
External info: Intel Trace Analyzer and Collector
LLVM The LLVM Core libraries provide a modern source- and target-independent optimizer,
along with code generation support for many popular CPUs (as well as some less
common ones!) These libraries are built around a well specified code representation
known as the LLVM intermediate representation (“LLVM IR”). The LLVM Core libraries
are well documented, and it is particularly easy to invent your own language
(or port an existing compiler) to use LLVM as an optimizer and code generator.
External info: LLVM
OPARI2 OPARI2, the successor of Forschungszentrum Juelich’s OPARI, is a source-to-source
instrumentation tool for OpenMP and hybrid codes. It surrounds OpenMP directives
and runtime library calls with calls to the POMP2 measurement interface.
External info: Score-p with OPARI2
PAPI PAPI provides the tool designer and application engineer with a consistent interface
and methodology for use of the performance counter hardware found in most major
microprocessors. PAPI enables software engineers to see, in near real time, the
relation between software performance and processor events. In addition Component
PAPI provides access to a collection of components that expose performance
measurement opportunites across the hardware and software stack.
External info: PAPI
Paraver A very powerful performance visualisation and analysis tool based on traces that can be
used to analyse any information that is expressed on its input trace format.
External info: Performance Tools from BSC
PDT Program Database Toolkit (PDT) is a framework for analyzing source code written in
several programming languages and for making rich program knowledge accessible
to developers of static and dynamic analysis tools. PDT implements a standard
program representation, the program database (PDB), that can be accessed in a
uniform way through a class library supporting common PDB operations.
External info: Program Database Toolkit
Scalasca Scalasca is a software tool that supports the performance optimization of parallel
programs by measuring and analyzing their runtime behavior. The analysis identifies
potential performance bottlenecks – in particular those concerning communication and
synchronization – and offers guidance in exploring their causes.
External info: Scalasca
Score-P The Score-P measurement infrastructure is a highly scalable and easy-to-use tool suite
for profiling, event tracing, and online analysis of HPC applications.
External info: Score-P
Valgrind Debugging and profiling tools.
External info: Valgrind
VTune Intel VTune Amplifier XE is the premier performance profiler for C, C++, C#, Fortran,
Assembly and Java.
External info: VTune

MPI Libraries

Library Description
Intel MPI (impi) Intel MPI (impi) is a high performance MPI implementation that can run on multiple
cluster interconnects chosen by the user at runtime.
Part of several compiler toolchains.
External info: Intel MPI Library
OpenMPI Open MPI is an open source combination of technologies from several other MPI
projects.
Part of several compiler/toolchains.
External info: Open MPI

Other Libraries

Library Description
BLACS The BLACS (Basic Linear Algebra Communication Subprograms) project aims to create a
linear algebra oriented message passing interface that may be implemented efficiently
and uniformly across a large range of distributed memory platforms. BLACS is now
part of ScaLAPACK.
External info: BLACS
ELPA Eigenvalue SoLvers for Petaflop-Applications.
External info: ELPA
Eigen Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers,
and related algorithms.
External info: Eigen
FFTW A fast, free C FFT library; includes real-complex, multidimensional, and parallel Fourier
transforms.
Part of several compiler toolchains.
External info: FFTW
GSL The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. The
library provides a wide range of mathematical routines such as random number generators,
special functions and least-squares fitting.
External info: GSL
Intel MKL Intel® Math Kernel Library (Intel® MKL) is a library of highly optimized, extensively
threaded math routines for science, engineering, and financial applications that require
maximum performance. Core math functions include BLAS, LAPACK, ScaLAPACK,
Sparse Solvers, Fast Fourier Transforms, Vector Math, and more.
Part of several compiler toolchains.
External info: Intel oneAPI Math Kernel Library
ipp Intel Integrated Performance Primitives (Intel IPP) is an extensive library of
multicore-ready, highly optimized software functions for multimedia, data processing, and
communications applications. Intel IPP offers thousands of optimized functions covering
frequently used fundamental algorithms.
External info: Intel Integrated Performance Primitives
Keras Keras is a minimalist, highly modular neural networks library, written in Python and
capable of running on top of either TensorFlow or Theano.
External info: Keras
Lapack LAPACK (Linear Algebra PACKage) is a software library for numerical linear algebra. It
provides routines for solving systems of linear equations and linear least squares,
eigenvalue problems, and singular value decomposition. It also includes routines to
implement the associated matrix factorizations such as LU, QR, Cholesky and Schur
decomposition. Included with OpenBLAS.
Part of several compiler toolchains.
External info: LAPACK
Libint Libint library is used to evaluate the traditional (electron repulsion) and certain novel
two-body matrix elements (integrals) over Cartesian Gaussian functions used in modern
atomic and molecular theory.
External info: libint
libxc Libxc is a library of exchange-correlation functionals for density-functional theory. The
aim is to provide a portable, well tested and reliable set of exchange and correlation
functionals.
External info: Libxc
LIBXSMM LIBXSMM is a library for small dense and small sparse matrix-matrix multiplications
targeting Intel Architecture (x86).
External info: libxsmm
METIS METIS is a set of serial programs for partitioning graphs, partitioning finite element
meshes, and producing fill reducing orderings for sparse matrices. The algorithms
implemented in METIS are based on the multilevel recursive-bisection, multilevel k-way,
and multi-constraint partitioning schemes.
External info: METIS
MPFR The MPFR library is a C library for multiple-precision floating-point computations with
correct rounding.
External info: MPFR
netCDF NetCDF (Network Common Data Form) is a set of software libraries and self-describing,
machine-independent data formats that support the creation, access, and sharing of
array-oriented scientific data.
External info: NetCDF
OpenBLAS OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
Part of several compiler toolchains.
External info: OpenBLAS
ParMETIS ParMETIS is an MPI-based parallel library that implements a variety of algorithms
for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings
of sparse matrices.
External info: ParMETIS
ScaLAPACK ScaLAPACK is a library of high-performance linear algebra routines for distributed-
memory message-passing computers and networks of workstations supporting PVM
and/or MPI. It is a continuation of the LAPACK project, which designed and produced
analogous software for workstations, vector supercomputers, and shared-memory
parallel computers.
Part of several compiler toolchains.
External info: ScaLAPACK
SCOTCH Software package and libraries for sequential and parallel graph partitioning, static
mapping, and sparse matrix block ordering, and sequential mesh and hypergraph
partitioning.
External info: scotch
SIONlib SIONlib is a scalable I/O library for parallel access to task-local files. The library
not only supports writing and reading binary data to or from several thousands of
processors into a single or a small number of physical files, but also provides global
open and close functions to access SIONlib files in parallel. This package provides
a stripped-down installation of SIONlib for use with performance tools (e.g., Score-P),
with renamed symbols to avoid conflicts when an application using SIONlib itself
is linked against a tool requiring a different SIONlib version.
External info: SIONlib
StarPU A Unified Runtime System for Heterogeneous Multicore Architectures, StarPU is a task
programming library for hybrid architectures.
External info: StarPU
Theano Theano is a numerical computation library for Python. In Theano, computations are
expressed using a NumPy-esque syntax and compiled to run efficiently on either CPU
or GPU architectures.
External info: Theano
Tensorflow An open-source software library for Machine Intelligence
External info: Tensorflow