Subject: discussion

From: Adam Greenberg <[email-masked]>
Date: Sat, 10 Jul 93 16:56:53 EDT

Date: Sat, 10 Jul 93 15:13:58 CDT
   From: Tony Skjellum <[email-masked]>

   Well, it used to be possible on some systems for the "HOST program"
   and even other node programs to spawn processes, kill processes,
   as needed, rather than having everything "known at the beginning."
   To be concrete, on the iPSC/2 and iPSC/860, it is possible to "spawn"
   and "kill/killcube."

   It would be nice if we could support, however weakly, the ability to
   cope with such dynamicism.  It is arguable that a spawn mechanism
   would return a communicator for the spawned child, and the spawned
   child would get its MPI_COMM_PARENT set accordingly.  With flatten/unflatten,
   the child could be told about other SPMD groups, without an explicit
   publish/subscribe mechanism.

The child could be told about other groups, but it would be unable to
participate in any communication unless other processes were told of its
existence.  This begs the issue of how to introduce (or delete) new processes
to (or from) the global process pool.

Will the exclusion of this functionality severely cripple many would-be MPI
users?  Will it cripple MPI acceptance?  Will it be difficult to include at a
later time - MPI2 were it to happen?

My opinion is that its exclusion is not a real problem.  However, I will
certainly listen to arguments to the contrary.

moose