Parallelization models supported on SuperMUC

SuperMUC supports a variety of parallel programming models. This document provides a short overview of these models, and points at more detailed documentation on usage and LRZ-specific provisions.

Table of contents

MPI

This is the library-based approach to distributed memory parallelism in most common use.

Hardware Interface supported Compiler MPI flavour Environment Module Name Compiler Wrappers Command for Starting Executable

Fully supported MPI environments

Infiniband and shared memory Intel compilers
(others are possible)
IBM MPI mpi.ibm mpif90, mpicc, mpiCC poe, mpiexec
Infiniband and shared memory Intel compilers
(others are possible)
Intel MPI mpi.intel mpif90, mpicc, mpiCC poe, mpiexec

Experimental MPI environments

Any, but may only partially work or have reduced performance Intel Fortran, C, C++ Open MPI mpi.ompi mpif90, mpicc, mpiCC mpiexec
Any, but may have reduced performance for distributed systems Intel Compilers, GCC
(Others are possible)
MPICH2 mpi.mpich2 mpif90, mpicc, mpiCC mpiexec

The above table contains links to implementation-specific documents which give more detailed usage information. There is also a general MPI overview page which has a complete list of MPI environments and includes general usage instructions.


OpenMP

This directive-based approach to shared-memory parallelism is discussed in more detail in the OpenMP document.

supporting compiler compiler invocation OpenMP compiler switch
Intel ifort, icc, icpc -openmp
GNU, GCC gfortran, gcc, g++ -fopenmp

Further Information

Pfeil nach oben