OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Typedefs
types.h File Reference
`#include "orte_config.h"`
`#include "opal/dss/dss_types.h"`

Go to the source code of this file.

## Data Structures
struct | orte_process_name_t

## Macros
#define | ORTE_STD_CNTR_T OPAL_INT32
| standard counters used in ORTE
#define | ORTE_STD_CNTR_MAX INT32_MAX
#define | ORTE_STD_CNTR_MIN INT32_MIN
#define | ORTE_STD_CNTR_INVALID -1
#define | ORTE_LOCAL_RANK OPAL_UINT16
#define | ORTE_NODE_RANK OPAL_UINT16
#define | ORTE_LOCAL_RANK_MAX UINT16_MAX-1
#define | ORTE_NODE_RANK_MAX UINT16_MAX-1
#define | ORTE_LOCAL_RANK_INVALID UINT16_MAX
#define | ORTE_NODE_RANK_INVALID UINT16_MAX
#define | ORTE_APP_IDX OPAL_UINT32
#define | ORTE_APP_IDX_MAX UINT32_MAX
#define | ORTE_JOBID_T OPAL_UINT32
#define | ORTE_JOBID_MAX UINT32_MAX-2
#define | ORTE_JOBID_MIN 0
#define | ORTE_VPID_T OPAL_UINT32
#define | ORTE_VPID_MAX UINT32_MAX-2
#define | ORTE_VPID_MIN 0
#define | ORTE_PROCESS_NAME_HTON(n)
#define | ORTE_PROCESS_NAME_NTOH(n)
#define | ORTE_NAME_ARGS(n)
#define | ORTE_JOBID_INVALID (ORTE_JOBID_MAX + 2)
#define | ORTE_VPID_INVALID (ORTE_VPID_MAX + 2)
#define | ORTE_EPOCH_INVALID (ORTE_EPOCH_MAX + 2)
#define | ORTE_LOCAL_JOBID_INVALID (ORTE_JOBID_INVALID & 0x0000FFFF)
#define | ORTE_JOBID_WILDCARD (ORTE_JOBID_MAX + 1)
#define | ORTE_VPID_WILDCARD (ORTE_VPID_MAX + 1)
#define | ORTE_EPOCH_WILDCARD (ORTE_EPOCH_MAX + 1)
#define | ORTE_LOCAL_JOBID_WILDCARD (ORTE_JOBID_WILDCARD & 0x0000FFFF)
#define | ORTE_STD_CNTR (OPAL_DSS_ID_DYNAMIC + 1)
| standard counter type
#define | ORTE_NAME (OPAL_DSS_ID_DYNAMIC + 2)
| an orte_process_name_t
#define | ORTE_VPID (OPAL_DSS_ID_DYNAMIC + 3)
| a vpid
#define | ORTE_JOBID (OPAL_DSS_ID_DYNAMIC + 4)
| a jobid
#define | ORTE_NODE_STATE (OPAL_DSS_ID_DYNAMIC + 6)
| node status flag
#define | ORTE_PROC_STATE (OPAL_DSS_ID_DYNAMIC + 7)
| process/resource status
#define | ORTE_JOB_STATE (OPAL_DSS_ID_DYNAMIC + 8)
| job status flag
#define | ORTE_EXIT_CODE (OPAL_DSS_ID_DYNAMIC + 9)
| process exit code
#define | ORTE_VALUE (OPAL_DSS_ID_DYNAMIC + 10)
| registry return value
#define | ORTE_APP_CONTEXT (OPAL_DSS_ID_DYNAMIC + 11)
| argv and enviro arrays
#define | ORTE_NODE_DESC (OPAL_DSS_ID_DYNAMIC + 12)
| describes capabilities of nodes
#define | ORTE_SLOT_DESC (OPAL_DSS_ID_DYNAMIC + 13)
| describes slot allocations/reservations
#define | ORTE_JOB (OPAL_DSS_ID_DYNAMIC + 14)
| job information
#define | ORTE_NODE (OPAL_DSS_ID_DYNAMIC + 15)
| node information
#define | ORTE_PROC (OPAL_DSS_ID_DYNAMIC + 16)
| process information
#define | ORTE_JOB_MAP (OPAL_DSS_ID_DYNAMIC + 17)
| map of process locations
#define | ORTE_RML_TAG (OPAL_DSS_ID_DYNAMIC + 18)
| tag for sending/receiving messages
#define | ORTE_DAEMON_CMD (OPAL_DSS_ID_DYNAMIC + 19)
| command flag for communicating with the daemon
#define | ORTE_GRPCOMM_MODE (OPAL_DSS_ID_DYNAMIC + 20)
#define | ORTE_IOF_TAG (OPAL_DSS_ID_DYNAMIC + 21)
#define | ORTE_DSS_ID_DYNAMIC (OPAL_DSS_ID_DYNAMIC + 50)

## Typedefs
typedef int32_t | orte_std_cntr_t
| Supported datatypes for messaging and storage operations.
typedef uint16_t | orte_local_rank_t
| rank on node, used for both local and node rank. More...
typedef uint16_t | orte_node_rank_t
typedef uint32_t | orte_app_idx_t
typedef uint32_t | orte_jobid_t
| Set the allowed range for ids in each space. More...
typedef uint32_t | orte_vpid_t
typedef struct orte_process_name_t | orte_process_name_t
typedef void * | orte_iov_base_ptr_t
| handle differences in iovec

## Macro Definition Documentation

#define ORTE_NAME_ARGS | ( |  | n | ) |

Value:
(unsigned long) ((NULL == n) ? (unsigned long)ORTE_JOBID_INVALID : (unsigned long)(n)->jobid), \
(unsigned long) ((NULL == n) ? (unsigned long)ORTE_VPID_INVALID : (unsigned long)(n)->vpid) \
(unsigned long) ((NULL == n) ? (unsigned long)ORTE_EPOCH_INVALID : (unsigned long)(n)->epoch)

#define ORTE_PROCESS_NAME_HTON | ( |  | n | ) |

Value:
do { \
n.jobid = htonl(n.jobid); \
n.vpid = htonl(n.vpid); \
} while (0)

#define ORTE_PROCESS_NAME_NTOH | ( |  | n | ) |

Value:
do { \
n.jobid = ntohl(n.jobid); \
n.vpid = ntohl(n.vpid); \
} while (0)

## Typedef Documentation

typedef uint32_t orte_jobid_t

Set the allowed range for ids in each space.

NOTE: Be sure to update the ORTE_NAME_ARGS #define (above) and all uses of it if these types change to be larger than (long)! The HTON and NTOH macros below must be updated, as well as the MIN / MAX macros below and the datatype packing representations in orte/mca/plm/base/plm_private.h

NOTE: Be sure to keep the jobid and vpid types the same size! Due to padding rules, it won't save anything to have one larger than the other, and it will cause problems in the communication subsystems

typedef uint16_t orte_local_rank_t

rank on node, used for both local and node rank.

We don't send these around on their own, so don't create dedicated type support for them - we are defining them here solely for readability in the code and so we have one place where any future changes can be made