Skip to content

Commit 18c3e1a

Browse files
committed
hwloc: clarify --with-hwloc behavior
Clarify in README what --with-hwloc does in its different use cases. Also, ensure that the behavior when specifying `--with-hwloc` is the same as if that option is not specified at all. This is what we did in Open MPI <= v3.x; looks like we inadvertantly caused `--with-hwloc` to be synonymous with `--with-hwloc=external` in v4.0.0. Signed-off-by: Jeff Squyres <[email protected]>
1 parent 8b424c3 commit 18c3e1a

File tree

2 files changed

+21
-19
lines changed

2 files changed

+21
-19
lines changed

README

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1252,28 +1252,26 @@ MISCELLANEOUS SUPPORT LIBRARIES
12521252
this option is only needed for special configurations.
12531253

12541254
--with-hwloc(=value)
1255-
Build hwloc support (default: enabled). This option specifies where
1256-
to find the hwloc support headers and library. The following values
1257-
are permitted:
1255+
hwloc is a support library that provides processor and memory
1256+
affinity information for NUMA platforms. It is required by Open
1257+
MPI. Therefore, specifying --with-hwloc=no (or --without-hwloc) is
1258+
disallowed.
12581259

1259-
internal: Use Open MPI's internal copy of hwloc.
1260-
external: Use an external hwloc installation (rely on default
1261-
compiler and linker paths to find it)
1262-
<no value>: Same as "internal".
1263-
<directory>: Specify the location of a specific hwloc
1264-
installation to use
1260+
By default (i.e., if --with-hwloc is not specified, or if
1261+
--with-hwloc is specified without a value), Open MPI will first try
1262+
to find/use an hwloc installation on the current system. If Open
1263+
MPI cannot find one, it will fall back to build and use the internal
1264+
copy of hwloc included in the Open MPI source tree.
12651265

1266-
By default (or if --with-hwloc is specified with no VALUE), Open MPI
1267-
will build and use the copy of hwloc that it has in its source tree.
1268-
However, if the VALUE is "external", Open MPI will look for the
1269-
relevant hwloc header files and library in default compiler / linker
1270-
locations. Or, VALUE can be a directory tree where the hwloc header
1271-
file and library can be found. This option allows operating systems
1272-
to include Open MPI and use their default hwloc installation instead
1273-
of Open MPI's bundled hwloc.
1266+
Alternatively, the --with-hwloc option can be used to specify where
1267+
to find the hwloc support headers and library. The following values
1268+
are permitted:
12741269

1275-
hwloc is a support library that provides processor and memory
1276-
affinity information for NUMA platforms.
1270+
internal: Only use Open MPI's internal copy of hwloc.
1271+
external: Only use an external hwloc installation (rely on
1272+
default compiler and linker paths to find it).
1273+
<directory>: Only use the specific hwloc installation found in
1274+
the specified directory.
12771275

12781276
--with-hwloc-libdir=<directory>
12791277
Look in directory for the hwloc libraries. This option is only

opal/mca/hwloc/configure.m4

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ AC_DEFUN([MCA_opal_hwloc_CONFIG_REQUIRE],[
7575
AC_MSG_WARN([an external copy that you supply.])
7676
AC_MSG_ERROR([Cannot continue])])
7777

78+
# check for no-op
79+
AS_IF([test "$with_hwloc" = "yes"],
80+
[with_hwloc=""])
81+
7882
# set default
7983
opal_hwloc_base_enable_xml=0
8084

0 commit comments

Comments
 (0)