@@ -527,37 +527,39 @@ MPI Collectives
527527 MPI process onto Mellanox QDR InfiniBand switch CPUs and HCAs.
528528
529529- The "ML" coll component is an implementation of MPI collective
530- operations that takes advantage of communication hierarchies
531- in modern systems. A ML collective operation is implemented by
530+ operations that takes advantage of communication hierarchies in
531+ modern systems. A ML collective operation is implemented by
532532 combining multiple independently progressing collective primitives
533533 implemented over different communication hierarchies, hence a ML
534- collective operation is also referred to as a hierarchical collective
535- operation. The number of collective primitives that are included in a
536- ML collective operation is a function of subgroups(hierarchies).
537- Typically, MPI processes in a single communication hierarchy such as
538- CPU socket, node, or subnet are grouped together into a single subgroup
539- (hierarchy). The number of subgroups are configurable at runtime,
540- and each different collective operation could be configured to have
541- a different of number of subgroups.
534+ collective operation is also referred to as a hierarchical
535+ collective operation. The number of collective primitives that are
536+ included in a ML collective operation is a function of
537+ subgroups(hierarchies). Typically, MPI processes in a single
538+ communication hierarchy such as CPU socket, node, or subnet are
539+ grouped together into a single subgroup (hierarchy). The number of
540+ subgroups are configurable at runtime, and each different collective
541+ operation could be configured to have a different of number of
542+ subgroups.
542543
543544 The component frameworks and components used by/required for a
544545 "ML" collective operation.
545546
546547 Frameworks:
547- * "sbgp" - Provides functionality for grouping processes into subgroups
548+ * "sbgp" - Provides functionality for grouping processes into
549+ subgroups
548550 * "bcol" - Provides collective primitives optimized for a particular
549551 communication hierarchy
550552
551553 Components:
552- * sbgp components - Provides grouping functionality over a CPU socket
553- ("basesocket"), shared memory ("basesmuma"),
554- Mellanox's ConnectX HCA ("ibnet"), and other
555- interconnects supported by PML ("p2p")
556-
557- * BCOL components - Provides optimized collective primitives for
558- shared memory ("basesmuma"), Mellanox's ConnectX
559- HCA ("iboffload"), and other interconnects supported
560- by PML ("ptpcoll")
554+ * sbgp components - Provides grouping functionality over a CPU
555+ socket ("basesocket"), shared memory
556+ ("basesmuma"), Mellanox's ConnectX HCA
557+ ("ibnet"), and other interconnects supported by
558+ PML ("p2p")
559+ * BCOL components - Provides optimized collective primitives for
560+ shared memory ("basesmuma"), Mellanox's ConnectX
561+ HCA ("iboffload"), and other interconnects
562+ supported by PML ("ptpcoll")
561563
562564- The "cuda" coll component provides CUDA-aware support for the
563565 reduction type collectives with GPU buffers. This component is only
@@ -997,10 +999,11 @@ RUN-TIME SYSTEM SUPPORT
997999 most cases. This option is only needed for special configurations.
9981000
9991001--with-pmi
1000- Build PMI support (by default on non-Cray XE/XC systems, it is not built).
1001- On Cray XE/XC systems, the location of pmi is detected automatically as
1002- part of the configure process. For non-Cray systems, if the pmi2.h header
1003- is found in addition to pmi.h, then support for PMI2 will be built.
1002+ Build PMI support (by default on non-Cray XE/XC systems, it is not
1003+ built). On Cray XE/XC systems, the location of pmi is detected
1004+ automatically as part of the configure process. For non-Cray
1005+ systems, if the pmi2.h header is found in addition to pmi.h, then
1006+ support for PMI2 will be built.
10041007
10051008--with-slurm
10061009 Force the building of SLURM scheduler support.
@@ -1631,9 +1634,9 @@ Open MPI API Extensions
16311634-----------------------
16321635
16331636Open MPI contains a framework for extending the MPI API that is
1634- available to applications. Each extension is usually a standalone set of
1635- functionality that is distinct from other extensions (similar to how
1636- Open MPI's plugins are usually unrelated to each other). These
1637+ available to applications. Each extension is usually a standalone set
1638+ of functionality that is distinct from other extensions (similar to
1639+ how Open MPI's plugins are usually unrelated to each other). These
16371640extensions provide new functions and/or constants that are available
16381641to MPI applications.
16391642
@@ -1951,9 +1954,9 @@ Here's how the three sub-groups are defined:
19511954 get their MPI/OSHMEM application to run correctly.
19521955 2. Application tuner: Generally, these are parameters that can be
19531956 used to tweak MPI application performance.
1954- 3. MPI/OSHMEM developer: Parameters that either don't fit in the other two,
1955- or are specifically intended for debugging / development of Open
1956- MPI itself.
1957+ 3. MPI/OSHMEM developer: Parameters that either don't fit in the
1958+ other two, or are specifically intended for debugging /
1959+ development of Open MPI itself.
19571960
19581961Each sub-group is broken down into three classifications:
19591962
0 commit comments