On Mon, 21 Nov 2005 06:00:05 -0700, Jeff Squyres <jsquy...@open-mpi.org>
wrote:
Although George fixed the MX-abort error, let me clarify the rationale
here...
You are correct that at run-time, OMPI tries to load an run every
component that it finds. So if you have BTL components build for all
interconnects, OMPI will query each of them at run-time and try to use
them.
But right now, we do not have a way to show exactly which interconnects
and which networks are actually being used. Although this is a planned
feature, for 1.0 we compromised and decided that if any of the
low-latency/high-speed network components decided that they could not
be used, they would print out a warning message. This should cover
95+% of misconfiguration cases (e.g., the user meant to be using IB,
but something went wrong and OMPI failed over to TCP).
It's certainly not a bad thing IMHO, either. It's pretty obvious there's
*something* wrong when you can only see 20 MB/sec over Infiniband. (It's
certainly easier to diagnose exactly what /something/ when the cluster's
Ethernet switch is a 10/100, not Gig-E.)
These warnings will likely be removed (or, more specifically, only
displayed if requested) once we include the feature to display which
BTL components/networks are being used at run-time.
While only really useful for testing, it would be neat to be able to say
'try to use every component execept this one.' For instance, should I
feel the need to scratch the itch of using IP-over-IB or TCP over Myrinet
-- in my case, this would mainly be because of my cluster's 10/100 switch,
and I'd like to test/tune either OMPI's TCP performance, or IPoIB/TCPoMyri
driver performance. In such a case, I could say 'ignore mvapi; yes RDMA
is good, sure it's a silly thing do do -- now bow to my will ye minions,
and despair.'
Naturally, I could do this by simply removing the openib, mvapi, gm,
and/or mx components; but that would require typing more characters than
'--ignore_mca btl gm'.