LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2004-07-23 16:40:14


On Jul 18, 2004, at 12:29 PM, Gabriel Antoine Louis Paillard wrote:

> I'm using the lam-6.5.9-3 (under Fedora core), and I'm trying to
> make a program, that needs uses MPI_Comm_spawn (the program is just
> below). But what I constated, is that it successfully create the first
> process (under the rank 0, I think...) and the other processes created
> under the others ranks, don't do anything. What I want exactly, is
> create a program with some nodes (in the begin) and after that, every
> process creates a child and every new process can act in the
> MPI_COMM_WORLD, how can I do that ?

You can't. MPI defines that MPI_COMM_WORLD is fixed -- it's created
during MPI_INIT and never changes. However, you can spawn children and
merge everything into one big communicator -- it just won't be
MPI_COMM_WORLD. Does that make sense?

You can see the lamtests package for some examples using spawn and
merging communicators together.

Also, from taking a [brief] glance at your program, be aware that the
MPI_Info key that you are using may not have been introduced until
LAM/MPI 7.x (you said that you're using v6.5.9). You'll need to check
the man page on MPI_Comm_spawn -- I don't remember offhand when we
introduced that key. If we didn't have it in 6.5.9, you won't get an
error (recall that MPI_Info keys are only "hints" to the MPI
implementation), but you won't get a spawn pattern like you want.

Also, I notice that Fedora is shipping LAM 7.0.something. How did you
get 6.5.9? Can you upgrade? The 7.0 series has a *lot* more
functionality than the 6.5 series, and the 6.5 series is officially
unsupported these days. Indeed, we're literally just about to release
v7.1.

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/