On Mon, 23 Feb 2009, Jeff Squyres wrote:
On Feb 23, 2009, at 10:37 AM, Eugene Loh wrote:
I sense an opening here and rush in for the kill...
:-)
And, why does the PML pass a BTL argument into the sendi function? First,
the BTL argument is not typically used. Second, if the BTL sendi function
wants to know what BTL it is,... uh, doesn't it already know??? Doesn't a
BTL know who it is? Why, then, should the PML have to tell it?
I suspect that it's passing in the BTL *module* argument, which may have
specific information about the connection that is to be used.
Example: if I have a dual-port IB HCA, Open MPI will make 2 different openib
BTL modules. In this case, the openib BTL will need to know exactly which
module the PML is trying to sendi on.
Exactly. In multi-nic situations, the BTL argument is critical. Since
the SM btl never really does "multi-nic", it doesn't have to worry about
the btl argument.
Brian