Subject: Re: [OMPI users] Infiniband requirements
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2009-06-25 20:36:19


On Jun 25, 2009, at 12:53 PM, Jim Kress wrote:

> Is it correct to assume that, when one is configuring openmpi v1.3.2
> and if
> one leaves out the
>
> --with-openib=/dir
>
> from the ./configure command line, that InfiniBand support will NOT
> be built
> into openmpi v1.3.2? Then, if an Ethernet network is present that
> connects
> all the nodes, openmpi will use that network?
>

No, that is not a safe assumption. Sorry for being a bit tardy in
this discussion -- it's been a crazy week. :-)

The best thing to do is to actually look at the output of configure.
We actually put a lot of effort to actually make the output be fairly
descriptive and informative about what the build process will do when
configure is complete. I find it easiest to dump the output of
configure to a file and looking at it later in a text editor. For
example, searching for btl:openib in my configure output, I see:

--- MCA component btl:openib (m4 configuration macro)
...bunch of stuff...
checking if MCA component btl:openib can compile... yes

The last line of the section indicates whether that plugin
("component") is going to build or not. In my case, the openib plugin
was happy and was going to build.

If it's not happy / won't build, then the reason why will be in one of
the lines above it (e.g., some header files not found, etc.).

We have some "rules of thumb" about --with-<foo> options for configure
(including --with-openib); thanks to Gus' questions a month or three
ago, I amended our FAQ to list all of them:

     http://www.open-mpi.org/faq/?category=building#default-build

> Also, is it required to add
>
> --enable-static
>
> to the ./configure command line to make sure Infiniband support is
> available?
>

No. I rarely (never?) build statically. Indeed, configuring with
OpenFabrics support statically is a rather dicey proposition. See:

     http://www.open-mpi.org/faq/?category=mpi-apps#static-mpi-apps
     http://www.open-mpi.org/faq/?category=mpi-apps#static-ofa-mpi-apps

> If I do not then the ompi_info --config command yields
>

ompi_info --config is not the important one that you want to look at
here.

You want to do what I suggested before: "ompi_info | grep btl" and
look for the "openib" component. If you run "ompi_info" with no
options, it shows you all the plugins that are installed. You want to
see that the openib plugin is successfully installed.

It's [somewhat] irrelevant as to which libraries are shown in the
ompi_info --config output; that's under-the-covers mumbo-jumbo that
you shouldn't usually need to worry about.

Hope that helps!

-- 
Jeff Squyres
Cisco Systems