Skip to content

Commit

Permalink
docs: specifically mention "OpenPMIx" (vs. "PMIx")
Browse files Browse the repository at this point in the history
In at least the required libraries page, specifically call out
"OpenPMIx" (i.e., the software library) instead of "PMIx" (i.e., the
standard).  Also update the URL to point to the OpenPMIx RTD docs.

Signed-off-by: Jeff Squyres <[email protected]>
  • Loading branch information
jsquyres committed Oct 2, 2024
1 parent 9cc74ee commit 9304b5f
Showing 1 changed file with 23 additions and 23 deletions.
46 changes: 23 additions & 23 deletions docs/installing-open-mpi/required-support-libraries.rst
Original file line number Diff line number Diff line change
Expand Up @@ -74,22 +74,22 @@ system.

.. note:: The Open MPI community has heavily tested Libevent
|event_embedded_version|. Other versions should *work*,
but |mdash| unlike Hwloc, Open PMIx, and PRRTE |mdash|
but |mdash| unlike Hwloc, OpenPMIx, and PRRTE |mdash|
there is not much reason to upgrade to use a later
version of Libevent.

* `PMIx <https://pmix.org/>`_
* `OpenPMIx <https://docs.openpmix.org/>`_

* This library is required; Open MPI will not build without it.
* **Minimum version required when building without PRRTE:**
|pmix_min_version|

.. note:: While the minimum version of Open PMIx will *work*, it
.. note:: While the minimum version of OpenPMIx will *work*, it
may still have bugs and/or have less functionality as
compared to later versions.

The Open MPI community generally recomends using the
latest available version of Open PMIx unless there is a
latest available version of OpenPMIx unless there is a
specific reason not to.

* **Minimum version required when building with PRRTE:** `See the
Expand Down Expand Up @@ -122,16 +122,16 @@ system.
.. warning:: If you are building the PRRTE that is embedded in the
Open MPI |ompi_ver| distribution:

* If you are also building the PMIx that is embedded in
* If you are also building the OpenPMIx that is embedded in
the Open MPI |ompi_ver| distribution, that
combination of packages is supported.

* If you are building against an external PMIx
installation (i.e., a version of PMIx that is not
* If you are building against an external OpenPMIx
installation (i.e., a version of OpenPMIx that is not
embedded in the Open MPI |ompi_ver| distribution),
you should check `the PRRTE project documentation
<https://docs.prrte.org/>`_ to see what minimum
version of PMIx is required.
version of OpenPMIx is required.

* If your environment uses another MPI application launcher (e.g.,
Slurm users can use the ``srun`` launcher to "direct launch" Open
Expand Down Expand Up @@ -177,11 +177,11 @@ These support libraries have dependencies upon each other:

The higher-level boxes depend on the lower-level boxes. Specifically:

* Open MPI depends on PRRTE, PMIx, Hwloc, and Libevent (i.e.,
* Open MPI depends on PRRTE, OpenPMIx, Hwloc, and Libevent (i.e.,
everything).
* PRRTE depends on PMIx, Hwloc, and Libevent (i.e., everything except
* PRRTE depends on OpenPMIx, Hwloc, and Libevent (i.e., everything except
Open MPI).
* PMIx depends on Hwloc and Libevent.
* OpenPMIx depends on Hwloc and Libevent.
* Hwloc does not depend on anything.
* Libevent does not depend on anything.

Expand All @@ -201,7 +201,7 @@ consider if:

* Loading the Open MPI shared library causes the loading of Libevent
shared library vA.B.C.
* But then the subsequent loading of the PMIx shared library causes
* But then the subsequent loading of the OpenPMIx shared library causes
the loading of Libevent shared library vX.Y.Z.

Since there are now two different versions of the Libevent shared
Expand Down Expand Up @@ -266,33 +266,33 @@ Build example 1
#. ``configure`` will ignore the PRRTE library that is bundled in the
Open MPI source tree and will use the PRRTE that is already
installed in ``/usr/local``.
#. ``configure`` will also ignore the bundled PMIx, Hwloc, and
#. ``configure`` will also ignore the bundled OpenPMIx, Hwloc, and
Libevent libraries in the Open MPI source tree.

* If ``configure`` is unable to find header files and libraries for
PMIx, Hwloc, and Libevent elsewhere on the build machine (i.e.,
assumedly the same PMIx, Hwloc, and Libevent than the PRRTE in
OpenPMIx, Hwloc, and Libevent elsewhere on the build machine (i.e.,
assumedly the same OpenPMIx, Hwloc, and Libevent than the PRRTE in
``/usr/local`` is using), this is an error: ``configure`` will
abort, and therefore refuse to build Open MPI.

Build example 2
^^^^^^^^^^^^^^^

``configure`` does *not* find PRRTE on the build machine, but *does*
find PMIx development headers and libraries in ``/opt/local``. This
find OpenPMIx development headers and libraries in ``/opt/local``. This
will cause the following to occur:

#. ``configure`` will set up to build the PRRTE library that is
bundled in the Open MPI source tree.
#. ``configure`` will ignore the PMIx library that is bundled in the
Open MPI source tree and will use the PMIx that is already
#. ``configure`` will ignore the OpenPMIx library that is bundled in the
Open MPI source tree and will use the OpenPMIx that is already
installed in ``/opt/local``.
#. ``configure`` will also ignore the bundled Hwloc and Libevent
libraries in the Open MPI source tree.

* If ``configure`` is unable to find header files and libraries for
Hwloc and Libevent elsewhere on the build machine (i.e.,
assumedly the same Hwloc and Libevent than the PMIx in
assumedly the same Hwloc and Libevent than the OpenPMIx in
``/opt/local`` is using), this is an error: ``configure`` will
abort, and therefore refuse to build Open MPI.

Expand All @@ -303,7 +303,7 @@ Build example 3
Libevent on the build machine. This will cause the following to
occur:

#. ``configure`` will set up to build the PRRTE, PMIx, and Hwloc
#. ``configure`` will set up to build the PRRTE, OpenPMIx, and Hwloc
libraries that are bundled in the Open MPI source tree.
#. ``configure`` will ignore the Libevent library that is bundled in
the Open MPI source tree and will use the Libevent that is already
Expand Down Expand Up @@ -435,10 +435,10 @@ your environment, you can use :ref:`command line options to override
its default behavior
<label-building-ompi-cli-options-required-support-libraries>`.

For example, if PMIx and/or PRRTE are installed such that the default
For example, if OpenPMIx and/or PRRTE are installed such that the default
header file and linker search paths will not find them, you can
provide command line options telling Open MPI's ``configure`` where to
search. Here's an example ``configure`` invocation where PMIx and
search. Here's an example ``configure`` invocation where OpenPMIx and
PRRTE have both been installed to ``/opt/open-mpi-stuff``:

.. code-block:: sh
Expand Down Expand Up @@ -480,7 +480,7 @@ versions of the required libraries.
-----------------------------

If you are an Open MPI packager, we **strongly** suggest that your
Open MPI package should not include Hwloc, Libevent, PMIx, or PRRTE.
Open MPI package should not include Hwloc, Libevent, OpenPMIx, or PRRTE.
Instead, it should depend on external, independently-built versions of
these packages.

Expand Down

0 comments on commit 9304b5f

Please sign in to comment.