Re: Using MPI_Init() without mpirun

Eric Salo (salo@mrjones.engr.sgi.com)
Tue, 30 Apr 1996 12:24:40 -0700

> Hopefully you are not advocating that for an SPMD program, there
> should be two separate programs!

Absolutely not. Since there ain't no spawning in SPMD programs anyway, you can
have a single executable and just key off of the rank. I don't consider
programs which check the "spawned bit" and then create slaves to be truly SPMD,
I would call them pseudo-SPMD.

> In the case of a truly SPMD model, I advocate keying off rank
> in MPI_COMM_WORLD instead of trying to do fancy things with spawn()
> and MPI_Have_I_been_spawned(). I agree with Al, though, that
> it should be *possible* to start an SPMD MPI program by spawning
> (since it is occasionally necessary, even though it it may often
> be misguided) so we should make sure we have enough mechanism
> to do it.
> For a truly MPMD model, there's no problem, as you point out.

I also agree, I just don't think that it will be possible for us to come up
with clean, portable semantics that would allow this to work with only a single
executable image. (Someone please prove me wrong!) In the case of these
pseudo-SPMD codes, I claim that two seperate images will be necessary because
in fact what we are *really* doing is running MPMD codes that just happen to be
alike everywhere except in the initialization section.

-- 
Eric Salo         Silicon Graphics Inc.             "Do you know what the
(415)933-2998     2011 N. Shoreline Blvd, 7L-802     last Xon said, just
salo@sgi.com      Mountain View, CA   94043-1389     before he died?"