Parallel code

From HP-SEE Wiki

(Difference between revisions)
Jump to: navigation, search
(MPICH implementations)
Line 1: Line 1:
-
= Message passing model =
+
= MESSAGE PASSING MODEL =
== MPICH implementations ==
== MPICH implementations ==
 +
 +
''Section contributed by IFIN-HH''
Proposed as a freely available and portable implementation of the MPI standard, MPICH has evolved along with it, from the MPICH1 implementation [mpc1] (fulfilling MPI-1 specifications and partially supporting some MPI-2 features like the parallel I/O), to MPICH2 [mpc2], which is moreover fully compatible with the MPI-2 version of the standard. Although the development of the MPICH1 was frozen since 2005 to the 1.2.7p1 version, with the intention to be replaced with MPICH2, it continues to be the most used MPI implementation worldwide.
Proposed as a freely available and portable implementation of the MPI standard, MPICH has evolved along with it, from the MPICH1 implementation [mpc1] (fulfilling MPI-1 specifications and partially supporting some MPI-2 features like the parallel I/O), to MPICH2 [mpc2], which is moreover fully compatible with the MPI-2 version of the standard. Although the development of the MPICH1 was frozen since 2005 to the 1.2.7p1 version, with the intention to be replaced with MPICH2, it continues to be the most used MPI implementation worldwide.
Line 17: Line 19:
* [[ MPIX (IBM) ]]
* [[ MPIX (IBM) ]]
-
== References ==
+
'''REFERENCES'''
-
[mpc1] blabla
+
[mpc1] MPICH1, http://www.mcs.anl.gov/research/projects/mpi/mpich1-old/
-
[mpc2] bla
+
[mpc2] MPICH2, http://www.mcs.anl.gov/research/projects/mpich2/
-
----
 
== Open MPI ==
== Open MPI ==
Line 38: Line 39:
== Porting between MPI implementations ==
== Porting between MPI implementations ==
-
= Shared memory model =
+
= SHARED MEMORY MODEL =
== OpenMP ==
== OpenMP ==
Line 44: Line 45:
== Pthreads ==
== Pthreads ==
-
= Hybrid programming =
+
= HYBRID PROGRAMMING =
= CUDA =
= CUDA =

Revision as of 19:46, 28 March 2012

Contents

MESSAGE PASSING MODEL

MPICH implementations

Section contributed by IFIN-HH

Proposed as a freely available and portable implementation of the MPI standard, MPICH has evolved along with it, from the MPICH1 implementation [mpc1] (fulfilling MPI-1 specifications and partially supporting some MPI-2 features like the parallel I/O), to MPICH2 [mpc2], which is moreover fully compatible with the MPI-2 version of the standard. Although the development of the MPICH1 was frozen since 2005 to the 1.2.7p1 version, with the intention to be replaced with MPICH2, it continues to be the most used MPI implementation worldwide.

REFERENCES

[mpc1] MPICH1, http://www.mcs.anl.gov/research/projects/mpi/mpich1-old/

[mpc2] MPICH2, http://www.mcs.anl.gov/research/projects/mpich2/


Open MPI

CMSLTM @IMBB (NEURON ParallelContext)

Preferred MPI environment is OpenMPI (openmpi_gcc-1.4.3). NEURON was compiled with parallel support (MPI) using the gcc compiler:

 ./configure --without-iv --with-paranrn --prefix=/home/gkastel/src/nrn-7.1

We used NEURON's ParallelContext to distribute the simulation of each neuron to different nodes evenly.

Porting between MPI implementations

SHARED MEMORY MODEL

OpenMP

Pthreads

HYBRID PROGRAMMING

CUDA

Personal tools