it4i logoDocumentation
Software

Environment and Modules

Shells on Clusters

The table shows which shells are available on the IT4Innovations clusters.

Note that bash is the only supported shell.

Cluster Namebashtcshzshkshdash
Karolinayesyesyesyesyes
Barborayesyesyesyesno
DGX-2yesnononono

Bash is the default shell. Should you need a different shell, contact support[at]it4i.cz.

Environment Customization

After logging in, you may want to configure the environment. Write your preferred path definitions, aliases, functions, and module loads in the .bashrc file

# ./bashrc

# users compilation path
export MODULEPATH=${MODULEPATH}:/home/$USER/.local/easybuild/modules/all

# User specific aliases and functions
alias sq='squeue --me'

# load default intel compilator !!! is not recommended !!!
ml intel

# Display information to standard output - only in interactive ssh session
if [ -n "$SSH_TTY" ]
then
 ml # Display loaded modules
fi

Do not run commands outputting to standard output (echo, module list, etc.) in .bashrc for non-interactive SSH sessions. It breaks the fundamental functionality (SCP) of your account. Take care for SSH session interactivity for such commands as stated in the previous example.

Application Modules

In order to configure your shell for running a particular application on clusters, we use a module package interface.

Application modules on clusters are built using EasyBuild. The modules are divided into the following groups:

Group NameDescription
baseThe default category for modules that do not fit into any other classification. Typically used for fundamental software or frameworks without a clear classification. This class is rarely assigned explicitly but serves as a fallback for unclassified modules. Software in this category may require further specification for better organization. If a module belongs to base, it might be beneficial to re-evaluate its classification.
bioIncludes software for bioinformatics, molecular biology, and biomedical research. Covers tools for DNA, RNA, and protein analysis, genome assembly, and molecular modeling. Commonly used in genetics, pharmaceutical research, and personalized medicine. Handles large datasets and often requires high-performance computing (HPC) resources. Examples: BLAST, Biopython, GATK, HISAT2, Samtools.
caeSoftware for Computer-Aided Engineering (CAE), including simulations and analysis tools. Used in fields such as fluid dynamics (CFD), structural mechanics, and optimization. Often requires parallel computing and GPU acceleration for complex simulations. Commonly applied in automotive, aerospace, and construction industries. Examples: OpenFOAM, ANSYS, Code_Aster, Elmer.
chemContains software for computational chemistry and quantum chemistry. Used for simulating chemical reactions, molecular modeling, and material analysis. Requires high computational power and often supports MPI for distributed computing. Common in academic research, pharmaceuticals, and nanotechnology. Examples: GROMACS, Gaussian, VASP, NWChem, ORCA.
compilerIncludes compilers and code-building tools for various programming languages. Contains both open-source compilers (GCC, Clang) and commercial options (Intel Compiler). Essential for software compilation on high-performance computing clusters. Used as a foundation for other modules, often combined with toolchains. Examples: GCC, Clang, Intel Compiler, PGI.
dataSoftware for data management, processing, and analysis. Includes database systems, big data frameworks, and file handling utilities. Important for HPC applications dealing with large-scale datasets. Used in bioinformatics, finance, climatology, and machine learning. Examples: HDF5, SQLite, Apache Spark, Parquet, Dask.
debuggerContains debugging and performance analysis tools. Helps identify bugs, memory leaks, and performance bottlenecks. Crucial for software development in scientific computing and HPC environments. Includes traditional debuggers as well as advanced profiling tools. Examples: GDB, Valgrind, Intel VTune, TotalView.
develDevelopment tools, build systems, and testing frameworks. Used for compiling, testing, and debugging software. Often depends on modules from the compiler and toolchain categories. Essential for creating software packages and automating builds. Examples: CMake, Autotools, Meson, Make, Bazel.
geoSoftware for geosciences, Geographic Information Systems (GIS), and remote sensing. Used in climate modeling, hydrology, seismology, and cartography. Often processes large spatial datasets in formats like NetCDF. Includes visualization tools for spatial data analysis. Examples: GMT, GDAL, QGIS, NetCDF.
ideIntegrated Development Environments (IDEs) and code editors. Used for software development, debugging, and project management. Supports various programming languages and frameworks, often with HPC extensions. Includes both GUI-based IDEs and text-based editors with advanced features. Examples: Eclipse, VS Code, Emacs, Vim, PyCharm.
langProgramming languages and development environments. Includes both interpreted languages (Python, R) and compiled languages (Fortran, Rust). Often bundled with runtime environments and libraries. Used in HPC, data science, numerical simulations, and machine learning. Examples: Python, R, Julia, Perl, Fortran, Rust.
libGeneral-purpose libraries used across multiple applications. Includes mathematical, networking, data processing, and graphical libraries. Essential for modular software and shared codebases. Commonly used in combination with devel and compiler modules. Examples: Boost, zlib, OpenSSL, libpng, FFmpeg.
mathMathematical software for numerical computing, algebra, and calculus. Used in scientific research, engineering, and statistics. Includes symbolic computation, numerical solvers, and statistical analysis tools. Often utilized in combination with programming languages like Python or MATLAB. Examples: MATLAB, Scilab, GNU Octave, Maxima, SymPy.
mpiImplements Message Passing Interface (MPI) for parallel computing. Essential for distributed computing on HPC clusters and supercomputers. Provides optimized communication between multiple compute nodes. Used in scientific simulations, large-scale modeling, and machine learning. Examples: OpenMPI, MPICH, Intel MPI.
numlibNumerical libraries for scientific computing and mathematical operations. Provides efficient algorithms for linear algebra, FFT, and optimization. Used in engineering, physics, and data analysis. Highly optimized for vectorized and parallel computations. Examples: LAPACK, FFTW, GSL, MKL, PETSc.
perfPerformance tools for profiling, benchmarking, and system monitoring. Helps optimize code efficiency and detect performance bottlenecks. Supports multi-threading, vectorization, and memory usage analysis. Used in HPC, big data processing, and system administration. Examples: PAPI, Perf, Intel VTune, TAU.
physPhysics-related software for modeling and simulating physical systems. Used in quantum mechanics, molecular dynamics, and fluid simulations. Often requires high computational power and parallel processing. Commonly applied in material science, astrophysics, and thermodynamics. Examples: VASP, Quantum ESPRESSO, LAMMPS, Geant4.
systemSystem utilities that depend on operating system and hardware. Includes containerization, GPU drivers, and system-specific libraries. Essential for managing system-level dependencies in HPC environments. Often used in cloud computing and virtualization. Examples: Singularity, CUDA, NVIDIA drivers, Slurm.
toolchainComplete compiler toolchains, combining compilers, libraries, and MPI stacks. Essential for HPC software, ensuring a consistent build environment. Common toolchains include foss (GCC + OpenMPI) and intel (Intel Compiler + Intel MPI). Provides pre-configured settings for optimized software compilation. Examples: foss, intel, gompi, iompi.
visVisualization and documentation tools for graphing, plotting, and rendering. Includes software for scientific visualization, data analysis, and LaTeX typesetting. Supports interactive visualizations, 3D modeling, and report generation. Commonly used in science, engineering, and research presentations. Examples: ParaView, Matplotlib, LaTeX, VMD, Gnuplot.

The modules set up the application paths, library paths and environment variables for running a particular application.

The modules may be loaded, unloaded, and switched according to momentary needs. For details, see lmod.

© 2025 IT4Innovations – All rights reserved.