21 #ifndef ORTE_MCA_RMAPS_TYPES_H
22 #define ORTE_MCA_RMAPS_TYPES_H
24 #include "orte_config.h"
25 #include "orte/constants.h"
28 #include "opal/mca/hwloc/hwloc.h"
38 typedef uint16_t orte_mapping_policy_t;
39 #define ORTE_MAPPING_POLICY OPAL_UINT16
40 typedef uint16_t orte_ranking_policy_t;
41 #define ORTE_RANKING_POLICY OPAL_UINT16
52 orte_mapping_policy_t mapping;
53 orte_ranking_policy_t ranking;
55 opal_binding_policy_t binding;
56 opal_hwloc_level_t bind_level;
60 int16_t cpus_per_rank;
70 orte_vpid_t daemon_vpid_start;
82 #define ORTE_RMAPS_BASE_VERSION_2_0_0 \
83 MCA_BASE_VERSION_2_0_0, \
87 #define ORTE_MAPPING_NO_USE_LOCAL 0x0100
88 #define ORTE_MAPPING_NO_OVERSUBSCRIBE 0x0200
89 #define ORTE_MAPPING_SUBSCRIBE_GIVEN 0x0400
90 #define ORTE_MAPPING_SPAN 0x0800
91 #define ORTE_MAPPING_PPR 0x1000
93 #define ORTE_MAPPING_CONFLICTED 0x2000
94 #define ORTE_MAPPING_GIVEN 0x4000
95 #define ORTE_SET_MAPPING_DIRECTIVE(target, pol) \
97 #define ORTE_UNSET_MAPPING_DIRECTIVE(target, pol) \
99 #define ORTE_GET_MAPPING_DIRECTIVE(pol) \
103 #define ORTE_MAPPING_BYSLOT 1
104 #define ORTE_MAPPING_BYNODE 2
105 #define ORTE_MAPPING_BYBOARD 3
106 #define ORTE_MAPPING_BYNUMA 4
107 #define ORTE_MAPPING_BYSOCKET 5
108 #define ORTE_MAPPING_BYL3CACHE 6
109 #define ORTE_MAPPING_BYL2CACHE 7
110 #define ORTE_MAPPING_BYL1CACHE 8
111 #define ORTE_MAPPING_BYCORE 9
112 #define ORTE_MAPPING_BYHWTHREAD 10
114 #define ORTE_MAPPING_RR 0x000f
116 #define ORTE_MAPPING_SEQ 20
118 #define ORTE_MAPPING_BYUSER 22
122 #define ORTE_GET_MAPPING_POLICY(pol) \
125 #define ORTE_MAPPING_POLICY_IS_SET(pol) \
127 #define ORTE_SET_MAPPING_POLICY(target, pol) \
128 (target) = (pol) | ((target) & 0xff00)
131 #define ORTE_RANKING_SPAN 0x1000
132 #define ORTE_RANKING_FILL 0x2000
133 #define ORTE_RANKING_GIVEN 0x4000
134 #define ORTE_SET_RANKING_DIRECTIVE(target, pol) \
136 #define ORTE_UNSET_RANKING_DIRECTIVE(target, pol) \
138 #define ORTE_GET_RANKING_DIRECTIVE(pol) \
142 #define ORTE_RANK_BY_NODE 1
143 #define ORTE_RANK_BY_BOARD 2
144 #define ORTE_RANK_BY_NUMA 3
145 #define ORTE_RANK_BY_SOCKET 4
146 #define ORTE_RANK_BY_L3CACHE 5
147 #define ORTE_RANK_BY_L2CACHE 6
148 #define ORTE_RANK_BY_L1CACHE 7
149 #define ORTE_RANK_BY_CORE 8
150 #define ORTE_RANK_BY_HWTHREAD 9
151 #define ORTE_RANK_BY_SLOT 10
152 #define ORTE_GET_RANKING_POLICY(pol) \
155 #define ORTE_RANKING_POLICY_IS_SET(pol) \
157 #define ORTE_SET_RANKING_POLICY(target, pol) \
158 (target) = (pol) | ((target) & 0xf000)
dynamic pointer array
Definition: opal_pointer_array.h:45
int32_t orte_std_cntr_t
Supported datatypes for messaging and storage operations.
Definition: types.h:34
See opal_bitmap.h for an explanation of why there is a split between OPAL and ORTE for this generic c...
Base object.
Definition: opal_object.h:182
Definition: rmaps_types.h:47
Global params for OpenRTE.
#define OBJ_CLASS_DECLARATION(NAME)
Declaration for class descriptor.
Definition: opal_object.h:236