1
1
openmpi/ompi/communicator
Brian Barrett 98884e45e4 Clean up the way procs are added to the global process list after MPI_INIT:
* Do not add new procs to the global list during modex callback or
    when sharing orte names during accept/connect.  For modex, we
    cache the modex info for later, in case that proc ever does get
    added to the global proc list.  For accept/connect orte name
    exchange between the roots, we only need the orte name, so no
    need to add a proc structure anyway.  The procs will be added
    to the global process list during the proc exchange later in 
    the wireup process
  * Rename proc_get_namebuf and proc_get_proclist to proc_pack
    and proc_unpack and extend them to include all information
    needed to build that proc struct on a remote node (which
    includes ORTE name, architecture, and hostname).  Change
    unpack to call pml_add_procs for the entire list of new
    procs at once, rather than one at a time.
  * Remove ompi_proc_find_and_add from the public proc
    interface and make it a private function.  This function
    would add a half-created proc to the global proc list, so
    making it harder to call is a good thing.

This means that there's only two ways to add new procs into the global proc list at this time: During MPI_INIT via the call to ompi_proc_init, where my job is added to the list and via ompi_proc_unpack using a buffer from a packed proc list sent to us by someone else.  Currently, this is enough to implement MPI semantics.  We can extend the interface more if we like, but that may require HNP communication to get the remote proc information and I wanted to avoid that if at all possible.

Refs trac:564

This commit was SVN r12798.

The following Trac tickets were found above:
  Ticket 564 --> https://svn.open-mpi.org/trac/ompi/ticket/564
2006-12-07 19:56:54 +00:00
..
comm_cid.c The last patch for Windows support. Mostly casting and conversion to C++ friendly headers. 2006-08-24 16:38:08 +00:00
comm_dyn.c Clean up the way procs are added to the global process list after MPI_INIT: 2006-12-07 19:56:54 +00:00
comm_init.c Last set of explicit conversions. We are now close to the zero warnings on 2006-10-20 03:57:44 +00:00
comm_publish.c The last patch for Windows support. Mostly casting and conversion to C++ friendly headers. 2006-08-24 16:38:08 +00:00
comm.c Clean up the way procs are added to the global process list after MPI_INIT: 2006-12-07 19:56:54 +00:00
communicator.h Clean up the way procs are added to the global process list after MPI_INIT: 2006-12-07 19:56:54 +00:00
Makefile.am Update the copyright notices for IU and UTK. 2005-11-05 19:57:48 +00:00