File: frameworks.rst

package info (click to toggle)
openmpi 5.0.8-3
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 201,692 kB
  • sloc: ansic: 613,078; makefile: 42,353; sh: 11,194; javascript: 9,244; f90: 7,052; java: 6,404; perl: 5,179; python: 1,859; lex: 740; fortran: 61; cpp: 20; tcl: 12
file content (71 lines) | stat: -rw-r--r-- 2,864 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
.. _label-frameworks:

Internal frameworks
===================

The Modular Component Architecture (MCA) is the backbone of PMIx
-- most services and functionality are implemented through MCA
components.

Here is a list of all the component frameworks in PMIx as of
this writing |date|:

* ``bfrops``: Buffer Operations, including support for pack/unpack,
  copy, print, compare, and load of data types and structured objects
* ``gds``: Generalized DataStore for storing job-level and other data
* ``pcompress``: Compress to support compression of large data objects
* ``pdl``: DLopen support
* ``pfexec``: Fork/Exec support to allow tools to start child processes
* ``pgpu``: GPU support
* ``pif``: Interface discovery
* ``pinstalldirs``: Install Directories - provides a struct containing
  all installation locations
* ``plog``: Logging of user-provided alerts
* ``pmdl``: Programming Model - provides support for a range of
  programming models and libraries, including collection of default
  parameters and environmental variables for forwarding and setting
  of library-specific environmental variables
* ``pnet``: Network support, including computation of endpoints to
  support the ``instant on`` launch procedure
* ``preg``: Regular expression generator and parser
* ``prm``: Resource Manager support - translation of generic PMIx directives
  (e.g., mapping and resource definitions) to RM-specific values and
  general RM-specific support
* ``psec``: Security operations such as connection handshakes
* ``psensor``: Sensor framework for monitoring processes, including
  resource utilization and state-of-health (e.g., heartbeat)
* ``psquash``: Internal framework for squashing integer data values
  during transmission
* ``pstat``: Statistics, including reporting resource usage at the
  process, node, and disk levels
* ``ptl``: Transport Layer for client-server and tool-server
  communication

Framework notes
---------------

Each framework typically has one or more components that are used at
run-time.  For example, the ``bfrops`` framework is used by PMIx
to pack/unpack data for transmission, copy data objects, and other
data manipulation operations.  The ``v3`` component, for example,
supports the data object definitions introduced in v3 of the
library, while the ``v41`` component supports those introduced
in v4.1.

MCA parameter notes
-------------------

Each component typically has some tunable parameters that can be
changed at run-time.  Use the :ref:`pmix_info(1) <man1-pmix_info>`
command to check a component to see what its tunable parameters are.
For example:

.. code-block:: sh

   shell$ pmix_info --param psensor file

shows the parameters (and default values) for the ``file`` ``psensor``
component.

See :ref:`this section <label-running-setting-mca-param-values>` for
details on how to set MCA parameters at run time.