Hi,
I assume you mean something like mca_coll_foo_init_query() for your
initialization function. And I'm guessing you're exchanging some sort
of address information for your network here?
correct.
What I actually did in my collective component was use PML's modex
(module exchange) facility, defined in
ompi/mca/pml/base/pml_base_module_exchange.h. I think all of the BTLs
use this, so look there if you would like to see examples.
The fact that this is associated with the PML is a bit of a historical
artifact; it is perfectly reasonable to use the modex stuff from a coll
component.
Another facility you might be interested in is ORTE's DSS (data
pack/unpack) and RML (remote messaging). The BTLs tend to use this for
out-of-band communication necessary for lazy connection establishment.
The headers you want are orte/dss/dss.h and orte/mca/rml/rml.h. Again,
many of the BTLs use this, so look there for examples.
Hope this helps!
Thank's a lot! I'll look into these.
Best regards,
Georg.