1
1
openmpi/ompi/mca/btl
Dave Goodell c40f8879c8 usnic: improve interface matching (esp. for UDP)
Prior to this commit we matched local interfaces to remote interfaces in
order to create endpoints in a simplistic way.  If any remote interfaces
were on the same subnet as any of our local interfaces then only local
interfaces would be paired (IP-routed remote interfaces would be
ignored).

This commit introduces a more general scheme which attempts to make the
"best" pairing of local interfaces to remote interfaces.  We now cast
the problem as a graph theory problem known as the "Assignment Problem",
or finding a maximum-cardinality, minimum-weight bipartite matching.  We
solve this problem by reducing the bipartite graph of interface
connectivity to a flow network and then solving for a minimum cost flow.
This is then easily converted into back into a matching on the original
bipartite graph.

In the new scheme, interfaces on the same subnet are preferred over
interfaces requiring intermediate routing hops and higher bandwidth
links are preferred over lower bandwidth links.

Reviewed-by: Jeff Squyres <jsquyres@cisco.com>

cmr=v1.7.5:ticket=trac:4253

This commit was SVN r30849.

The following Trac tickets were found above:
  Ticket 4253 --> https://svn.open-mpi.org/trac/ompi/ticket/4253
2014-02-26 07:50:26 +00:00
..
base Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
openib Addressing Jeff's comments: 2014-02-24 23:18:35 +00:00
portals4 * Add multi-device support to the Portals 4 btl. 2014-01-09 20:01:42 +00:00
scif Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
sctp Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
self Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
sm No exit down into a BTL. 2014-02-05 15:04:01 +00:00
smcuda Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
tcp Per Marco, rename "interface" to "tcp_interface" to avoid cygwin reserved word 2014-01-10 18:02:22 +00:00
template Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00
ugni btl/ugni: fix typo 2014-02-21 17:46:22 +00:00
usnic usnic: improve interface matching (esp. for UDP) 2014-02-26 07:50:26 +00:00
vader vader: attempt to work around SGI UV issues by creating a segment that 2014-02-11 16:28:25 +00:00
btl.h Chnage some CUDA configure code and macro names per review request by jsquyres in ticket #3880. 2013-12-06 14:35:10 +00:00
Makefile.am Fix longstanding issue with our multi-project support. Rather than using 2014-01-07 22:11:15 +00:00