[Developers] FW: parallel processing

Hans Julius Skaug Hans.Skaug at math.uib.no
Fri Jul 1 07:56:00 PDT 2011

ADMB developers,

Following the session on parallelization in Santa Barbara,
Dave has made a few suggestions: "thread local storage is the concept we were missing",
and the suggestion to use MPI (see message below). I want
to bring this discussion into plenary because the choice of strategy is important.


1. What kind of parallel architechture do we aim at:
   a) Multicore (shared memory) processors. Every machine has got this today so there is a large "market".
   b) Clusters connected via a network. This is what Dave mentions.

I had thought of only a). If b) is achievable for free one should clearly say "yes",
but the question is whether one should let b) dictate the choice of parallelization approach.

2. Choice parallelization approach pthreads, mpi or openmp.
   I have only investigated openmp. If applicable it requires very little change to existing 
   code, which in my mind is important. The choice we make (pthreads, mpi or openmp) should:
   - satisfy all our needs
   - last 10 years as a technology

Dave: do you know if OpenMP used together with "thread local storage" will do what we want?

Developers: 1) is a question that we all should have an opinion about.



-----Original Message-----
From: developers-bounces at admb-project.org [mailto:developers-bounces at admb-project.org] On Behalf Of dave fournier
Sent: Thursday, June 30, 2011 4:05 PM
To: developers at admb-project.org
Subject: [Developers] parallel processing

I think that we should consider open mpi  for parallel processing.  This 
is on the
process level rather than the thread level. It seems to support the 
master -slave model
which is what I used with pvm. In  this example  the master creates a 
number of slaves.
This can be done on one machine or also over a network.

After installin open mpi this compiles with

  mpicxx manager.c -o manager

  mpicxx worker.c -o worker

and runs with

  mpirun -np 1   ./manager

-------------- next part --------------
A non-text attachment was scrubbed...
Name: manager.c
Type: text/x-csrc
Size: 2119 bytes
Desc: manager.c
URL: <http://lists.admb-project.org/pipermail/developers/attachments/20110701/17ed570b/attachment.c>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: worker.c
Type: text/x-csrc
Size: 920 bytes
Desc: worker.c
URL: <http://lists.admb-project.org/pipermail/developers/attachments/20110701/17ed570b/attachment-0001.c>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ATT00001.txt
URL: <http://lists.admb-project.org/pipermail/developers/attachments/20110701/17ed570b/attachment.txt>

More information about the Developers mailing list