Bright:Using MPI

From Define Wiki
Jump to navigation Jump to search

The Message Passing Interface (MPI) is a standardized and portable message passing system, designed to function on a wide variety of parallel computers. The standard defines the syntax and semantics of a core of library routines useful to a wide range of users writing portable message-passing programs in Fortran or the C programming language. MPI libraries allow the compilation of code so that it can be used over a variety of multiprocessor systems from SMP nodes to NUMA systems and interconnected cluster nodes.

Interconnects

Jobs can use particular networks for intra-node communication:

  • Gigabit Ethernet: Gigabit Ethernet is the interconnect that is most commonly available. For Gigabit Ethernet, no additional modules or libraries are needed. The Open MPI, MPICH implementations will work over Gigabit Ethernet.
  • InfiniBand: InfiniBand is a high-performance switched fabric which is characterized by its high throughput and low latency. Open MPI, MVAPICH and MVAPICH2 are suitable MPI implementations for InfiniBand.

Preparing and Running an MPI Application

  1. Load the correct compiler and the corresponding MPI implementation modules