Skip to content

Commit 57b7f08

Browse files
committed
docs:update tcp tuning page
reference prrte docs for prrte tcp related mca parameters. use intersphinx to avoid needing to use external URL references. Signed-off-by: Howard Pritchard <howardp@lanl.gov>
1 parent 448fa67 commit 57b7f08

File tree

3 files changed

+33
-16
lines changed

3 files changed

+33
-16
lines changed

docs/Makefile.am

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1095,8 +1095,8 @@ $(ALL_MAN_BUILT):
10951095
cp -rpf "$(OMPI_PRRTE_RST_CONTENT_DIR)" "$(builddir)"; \
10961096
copied_dir=`basename $(OMPI_PRRTE_RST_CONTENT_DIR)`; \
10971097
chmod -R u+w "$(builddir)/$$copied_dir"
1098-
$(OMPI_V_SPHINX_HTML) OMPI_TOP_SRCDIR=$(top_srcdir) $(SPHINX_BUILD) -M html "$(builddir)" "$(OUTDIR)" $(SPHINX_OPTS)
1099-
$(OMPI_V_SPHINX_MAN) OMPI_TOP_SRCDIR=$(top_srcdir) $(SPHINX_BUILD) -M man "$(builddir)" "$(OUTDIR)" $(SPHINX_OPTS)
1098+
$(OMPI_V_SPHINX_HTML) OMPI_TOP_SRCDIR=$(top_srcdir) OMPI_PREFIX=$(prefix) $(SPHINX_BUILD) -M html "$(builddir)" "$(OUTDIR)" $(SPHINX_OPTS)
1099+
$(OMPI_V_SPHINX_MAN) OMPI_TOP_SRCDIR=$(top_srcdir) OMPI_PREFIX=$(prefix) $(SPHINX_BUILD) -M man "$(builddir)" "$(OUTDIR)" $(SPHINX_OPTS)
11001100

11011101
# A useful rule to invoke manually to ensure that all of the external
11021102
# HTML links we have are valid. Running this rule requires

docs/conf.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,12 @@
3131
ompi_top_srcdir = '..'
3232
if 'OMPI_TOP_SRCDIR' in os.environ:
3333
ompi_top_srcdir = os.environ['OMPI_TOP_SRCDIR']
34+
ompi_prefix = ''
35+
if 'OMPI_PREFIX' in os.environ:
36+
ompi_prefix = os.environ['OMPI_PREFIX']
37+
else:
38+
print(f"ERROR: Unable to find install path")
39+
exit(1)
3440

3541
# Read an Open MPI-style VERSION file
3642
def read_version_file(path):
@@ -178,8 +184,24 @@ def get_tarball_version(path, expr):
178184
'recommonmark',
179185
"sphinx_rtd_theme",
180186
"sphinx.ext.extlinks",
187+
"sphinx.ext.intersphinx",
181188
]
182189

190+
# conf.py file
191+
192+
intersphinx_mapping = {
193+
"prrte": (f"{ompi_prefix}/share/doc/prrte/html", None),
194+
"pmix": (f"{ompi_prefix}/share/doc/pmix/html", None),
195+
}
196+
197+
# We recommend adding the following config value.
198+
# Sphinx defaults to automatically resolve *unresolved* labels using all your Intersphinx mappings.
199+
# This behavior has unintended side-effects, namely that documentations local references can
200+
# suddenly resolve to an external location.
201+
# See also:
202+
# https://www.sphinx-doc.org/en/master/usage/extensions/intersphinx.html#confval-intersphinx_disabled_reftypes
203+
intersphinx_disabled_reftypes = ["*"]
204+
183205
# Add any paths that contain templates here, relative to this directory.
184206
templates_path = ['_templates']
185207

docs/tuning-apps/networking/tcp.rst

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -247,20 +247,15 @@ not use specific IP networks |mdash| or not use any IP networks at all
247247
.. warning:: If you use the ``btl_tcp_if_include`` and
248248
``btl_tcp_if_exclude`` MCA parameters to shape the
249249
behavior of the TCP BTL for MPI communications, you may
250-
also need/want to investigate the corresponding MCA
251-
parameters ``oob_tcp_if_include`` and
252-
``oob_tcp_if_exclude``, which are used to shape non-MPI
253-
TCP-based communication (e.g., communications setup and
254-
coordination during ``MPI_INIT`` and ``MPI_FINALIZE``).
255-
256-
.. error:: TODO do corresponding OOB TCP params still exist in PMIx?
257-
258-
Note that Open MPI will still use TCP for control messages, such as
259-
data between ``mpirun`` and the MPI processes, rendezvous information
260-
during ``MPI_INIT``, etc. To disable TCP altogether, you also need to
261-
disable the ``tcp`` component from the OOB framework.
262-
263-
.. error:: TODO Is this possible in PMIx? I doubt it...?
250+
also need/want to investigate the corresponding PRRTE
251+
parameters that control use of network interfaces by the runtime
252+
(e.g., communications setup and coordination during
253+
``MPI_INIT`` and ``MPI_FINALIZE``) using the :ref:`prte_info <prrte:man1-ompi-prte_info>`
254+
and :ref:`pmix_info <pmix:man1-pmix_info>` commands.
255+
256+
Note that the Open MPI runtime uses TCP for control messages, such as
257+
for data exchange between ``mpirun`` and the MPI processes, rendezvous information
258+
during ``MPI_INIT``, etc. even if the ``tcp`` BTL component is disabled.
264259

265260
/////////////////////////////////////////////////////////////////////////
266261

0 commit comments

Comments
 (0)