4. Modules#

Overview

Tutorial: 10 min

Objectives: Learn how to find and load modules on Gadi.

Modules are the standard way software is managed on most HPC systems. They allow users to dynamically configure their environment so that required applications, libraries, and dependencies can be accessed without user installation or environment setup.

On Gadi, a wide range of software applications is centrally installed and maintained. These are stored in the /apps directory to provide a shared, consistent, and optimised software environment for all users. Keeping software in a central location avoids duplication, ensures consistent versions across users, simplifies maintenance and updates, and supports performance tuning for the HPC architecture.

Info

You can check this page for Licence Live Status: my.nci.org.au/licence-status

4.1. Module Commands#

We can see all the available modules using the command

module avail

To see all the versions of a module, we can use the command

module avail python3

If we want load a module python3/3.11.0 we can use the command

module load python3/3.11.0

If we want to unload the same module use the command

module unload python3/3.11.0

We can unload all the modules using the command

module purge

4.2. Practice: Load the openmpi module#

To build and compile the program from our last practice (hello_mpi.c) into something that can run on Gadi, we need to use the module openmpi to help with the compilation.

Exercise

  1. Check if the openmpi module is available, if so, which versions are available?

  2. Load the openmpi module verison 4.1.5 and check if it is loaded using the command module list.

  3. Once successfully loaded, we can compile the program using the command

mpicc hello_mpi.c -o hello_mpi

This will compile a binary file for you, named hello_mpi. Check the binary file is created.