Skip to content

Commit

Permalink
Merge pull request #24 from stigrj/mpi_runs
Browse files Browse the repository at this point in the history
Add page with MPI recommendations
  • Loading branch information
bast committed Oct 23, 2017
2 parents f5a0189 + e703282 commit 746cac5
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 0 deletions.
1 change: 1 addition & 0 deletions index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ HPC-UiT Services User Documentation
:caption: Jobs

jobs/dos_and_donts.rst
jobs/running_mpi_jobs.rst
jobs/examples.rst
jobs/account.rst
jobs/batch.rst
Expand Down
38 changes: 38 additions & 0 deletions jobs/running_mpi_jobs.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@


Running MPI jobs
================

There are two available MPI implementations on Stallo:

- OpenMPI provided by the ``foss`` module, e.g. ``module load foss/2016b``
- Intel MPI provided by the ``intel`` module, e.g. ``module load intel/2016b``

There are several ways of launching an MPI application within a SLURM
allocation, e.g. ``srun``, ``mpirun``, ``mpiexec`` and ``mpiexec.hydra``.
Unfortunately, the best way to launch your program depends on the MPI
implementation (and possibly your application), and choosing the wrong command
can severly affect the efficiency of your parallel run. Our recommendation is
the following:

Intel MPI
---------

With Intel MPI, we have found that ``mpirun`` can incorrectly distribute the
MPI ranks among the allocated nodes. We thus recommend using ``srun``::

$ srun --mpi=pmi2 ./my_application

OpenMPI
-------

With OpenMPI, ``mpirun`` seems to be working correctly. Also, it seems that
``srun`` fails to launch your application in parallel, so here we recommend
using ``mpirun``::

$ mpirun ./my_application

NOTE: If you're running on the ``multinode`` partition you automatically
get the ``--exclusive`` flag, e.i. you get allocated (and charged for) **full**
nodes, even if you explicitly ask for less resources per node. This is not the
case for the ``normal`` partition.

0 comments on commit 746cac5

Please sign in to comment.