Ralph - Are you looking for the "best" single connection between two hosts, or the best set of pairings, or even "just any pairing that works"? The TCP BTL code is complicated because it's looking for the best overall set of pairings, to maximize the number (and quality) of links between the two ranks. This (theoretically) maximizes throughput. The usage model for "I just want one connection that moves some bits" is probably a lot simpler. I don't think you need to build the entire graph in that case.
Some of the complexity was also that we were trying to reuse as much code as possible between TCP and usnic, while making minimum changes to usnic. Maybe not the best option, but AWS doesn't have a way of testing on usnic, so... Brian From: devel <devel-boun...@lists.open-mpi.org> on behalf of Ralph Castain via devel <devel@lists.open-mpi.org> Reply-To: Open MPI Developers <devel@lists.open-mpi.org> Date: Thursday, January 2, 2020 at 12:41 PM To: George Bosilca <bosi...@icl.utk.edu> Cc: Ralph Castain <r...@open-mpi.org>, OpenMPI Devel <devel@lists.open-mpi.org> Subject: Re: [OMPI devel] Reachable framework integration Hmmm...pretty complex code in there. Looks like it has to be "replicated" for reuse as functions are passing in btl_tcp specific structs. Is it worth developing an abstracted version of such functions as mca_btl_tcp_proc_create_interface_graph and mca_btl_tcp_proc_store_matched_interfaces? On Jan 2, 2020, at 9:35 AM, George Bosilca <bosi...@icl.utk.edu<mailto:bosi...@icl.utk.edu>> wrote: Ralph, I think the first use is still pending reviews (more precisely my review) at https://github.com/open-mpi/ompi/pull/7134. George. On Wed, Jan 1, 2020 at 9:53 PM Ralph Castain via devel <devel@lists.open-mpi.org<mailto:devel@lists.open-mpi.org>> wrote: Hey folks I can't find where the opal/reachable framework is being used in OMPI. I would like to utilize it in the PRRTE oob/tcp component, but need some guidance on how to do so, or pointers to an example. Ralph