skip to content

Mek-quake is a cluster system and so message passing libraries are used to make code run in parallel. Shared memory parallelization (OpenMP, provided by the autoparallelizing options on some of the compilers) can also be used for up to four cores but not further.

The available message passing libraries are MPI implementations: currently we recommend OpenMPI.

To change your parallel environment you need to load the appropriate module. By default a standard set of modules is loaded. To load different ones on login you'd edit your .bash_profile file and change the module add line.

Compile your code with the MPI compilers. These are usually called mpicc,  mpiCC,   and mpifort.

To run MPI code you normally use a command such as mpirun to launch your program. On mek-quake there is a queueing system which assigns work to compute nodes, and so the MPI library has to interact with that which makes things more complicated. The launchers work out the correct number of cpus and which nodes to use from the queueing system. You must use the appropriate one for your MPI library, and you must have your environment configured for the library you want to use when you submit a job, as otherwise the job won't be able to find its library files. Here's a list of which job start command goes with which library:

Library Command
OpenMPI mpirun

Can't find what you're looking for?

Then you might find our A-Z site index useful. Or, you can search the site using the box at the top of the page, or by clicking here.