This page was translated by an AI (LLM) with a cursory human check and is awaiting full review.
MUST
Description
MUST is a tool that detects errors in the use of the MPI library during the execution of a program.
Usage
The module command provides access to the various versions of MUST:
$ module av must
must/1.6-mpi
To use this version 1.6-mpi, simply use the following command:
$ module load must/1.6-mpi
Once the module is loaded, using MUST involves two steps:
- Running your program with
mustrun; - Viewing the diagnostics.
Execution
Execution can be done either interactively or in batch mode, using the mustrun command:
$ module load must/1.6-mpi
$ mustrun --must:mpiexec srun --must:np -n -n 5 my_exe
Note that the overhead of MUST on execution time can be very significant: by adding the --must:nocrash option, this overhead becomes low, but this option does not work if the program stops abruptly.
MUST uses an additional MPI process to observe the MPI behaviour of the program. It is therefore necessary to reserve one additional task (i.e. 1 additional CPU) in the SLURM script.
Viewing Results
MUST writes an HTML file MUST_output.html at the end of the program execution.
This file can be viewed using any web browser.
Documentation
- MUST documentation