How to Set Up Your Environment to Run Programs on Metis

First, you must decide what kind of programs you want to run on Metis. For example, are you going to run an MPI program, a CUDA program, or a program that uses both MPI and CUDA?

Once you know the type of programs that you want to run on Metis, you need to select the corresponding modules from Metis list of modules.

To see the list of all available modules, use the following command:

metis% module av

----------- /usr/share/Modules/modulefiles -----------

dot module-git module-info modules null use.own

----------- /etc/modulefiles -------------------------

ace3p/ace3p-openmpi-1.8.0 mpi/openmpi3-x86_64
ace3p/ace3p-openmpi-4.1.5-gcc-11.4.0 mpich2/mpich-3.3.2-intel2020
ace3p/gklib-openmpi-4.1.5 mumps/mumps-5.6.1-openmpi-4.1.5-gcc-11.4.0
ace3p/metis-gklib-openmpi-4.1.5 mvapich2/mvapich2-2.0
ace3p/parmetis-openmpi-4.1.5 mvapich2/mvapich2-2.2-cuda8.0
ace3p/zoltan-3.901-openmpi-4.1.5-gcc-11.4.0 mvapich2/mvapich2-2.3rc2-cuda7.5
adios/adios-1.13.1-openmpi-4.0.2 mvapich2/mvapich2-2.3rc2-cuda8.0
armadillo/armadillo-12.6.2-gcc-11.4.0 mvapich2/mvapich2-gdr-2.2.4-cuda8.0
arpack/arpack-3.8.0-openmpi-4.1.5-gcc-11.4.0 namd/namd-2.11-cuda-6.0
bmrks/xhpl-2.3 namd/namd-2.11-openmpi-1.8.1
bmrks/xhpl-2.3-openmpi-4.1.5-gcc-11.4.0-cuda-11.8 ncarg/ncarg-6.6.2

:Press "PgDN" to see the full list
metis%

To only list modules starting with some pattern, add the search pattern to the command:

metis% module av "search_patten"

For example, to list available modules starting with "openmpi":

metis% module av openmpi
------------------ /etc/modulefiles ------------------

openmpi/openmpi-1.8.8-gcc-11.4.0 openmpi/openmpi-4.1.1-gcc-11.3.0-cuda-11.8 openmpi/openmpi-4.1.5-gcc-12.3.0-cuda-12.2
openmpi/openmpi-4.0.7-gcc-9.5.0-cuda-11.8 openmpi/openmpi-4.1.5-gcc-11.4.0-cuda-11.8 openmpi/openmpi-metis-release

To load the module(s) that corresponds with the types of programs you will be running on Metis, use module load modulename command, including the version number:

metis% module load openmpi/openmpi-4.1.5-gcc-11.4.0-cuda-11.8

You can confirm that the modules you specified have been successfully loaded by using the module list command:

metis% module li
Currently Loaded Modulefiles:
1) gcc/gcc-11.4.0;    2) cuda/cuda-11.8;    3) openmpi/openmpi-4.1.5-gcc-11.4.0-cuda-11.8

To clean up the environment and load a different nodule(s), use the module purge; module load newmodule sequence:

metis% module purge; module load openmpi/openmpi-4.1.5-gcc-12.3.0-cuda-12.2

Using modules in batch jobs.

All modules required for a specific job should be explicitly loaded in the corresponding job submission script. Thus, for the example above, the job submission script should include the line:

module purge;module load openmpi/openmpi-4.1.5-gcc-11.4.0-cuda-11.8; module li

before running an application myApp
mpirun myApp

Prospective user?

Request an account.

Back to top