I guess I had thought that this new model fit nicely within
abstraction barriers -- ask the component to "do whatever you need to
do to warmup your routes". The knowledge how to do that is already
down in that component; is there really a reason/need to export it
higher?
On Jun 19, 2008, at 12:05 PM, George Bosilca wrote:
Ralph,
I don't necessarily agree with this statement. There is a generic
method to do the correct wireup, and this method works independent
of the selected routed algorithms.
One can use the routed to ask for the next hop for each of the
destinations, make a unique list out of these first hop
destinations, and then finally generate the connections to them. Of
course there is a cost associated with this method. Creating the
temporary list will be a quite expensive, but this list will be
smaller for highly optimized routed components. Eventually, a more
optimized approach will be to use the get_routing_tree function in
order to gather the direct routes, and then start the connections to
these children. This approach is not more complex than the current
implementation, and give us the benefit of having a consistent
behavior in all cases.
george.
On Jun 19, 2008, at 3:48 PM, r...@osl.iu.edu wrote:
Author: rhc
Date: 2008-06-19 09:48:26 EDT (Thu, 19 Jun 2008)
New Revision: 18677
URL: https://svn.open-mpi.org/trac/ompi/changeset/18677
Log:
Shift responsibility for preconnecting the oob to the orte routed
framework, which is the only place that knows what needs to be
done. Only the direct module will actually do anything - it uses
the same algo as the original preconnect function.
Text files modified:
trunk/ompi/mca/dpm/dpm.h | 7 +-
trunk/ompi/runtime/mpiruntime.h | 1
trunk/ompi/runtime/ompi_mpi_init.c | 29 ++++++
+------
trunk/ompi/runtime/ompi_mpi_preconnect.c | 80
---------------------------------------
trunk/orte/mca/grpcomm/basic/grpcomm_basic_module.c | 13 ++++-
trunk/orte/mca/odls/base/odls_base_default_fns.c | 5 +
trunk/orte/mca/routed/binomial/routed_binomial.c | 20 +++++++
++
trunk/orte/mca/routed/direct/routed_direct.c | 56 +++++++
++++++++++++++++++++
trunk/orte/mca/routed/linear/routed_linear.c | 7 +++
trunk/orte/mca/routed/routed.h | 10 ++++
trunk/orte/orted/orted_comm.c | 5 ++
trunk/orte/util/nidmap.c | 81 +++++++
+++++++++++++++++++-------------
12 files changed, 184 insertions(+), 130 deletions(-)
_______________________________________________
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel
--
Jeff Squyres
Cisco Systems