|
Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Public Types | |
| typedef hwloc_cpuset_t | affinity_mask |
| typedef hwloc_const_cpuset_t | const_affinity_mask |
Public Member Functions | |
| bool | is_topology_parsed () |
| void | initialize (size_t groups_num) |
| ~platform_topology () | |
| void | fill (int &nodes_count, int *&indexes_list, int *&concurrency_list) |
| affinity_mask | allocate_process_affinity_mask () |
| void | free_affinity_mask (affinity_mask mask_to_free) |
| void | store_current_affinity_mask (affinity_mask current_mask) |
| void | set_new_affinity_mask (const_affinity_mask new_mask) |
| const_affinity_mask | get_node_affinity_mask (int node_index) |
Static Public Member Functions | |
| static platform_topology & | instance () |
Private Types | |
| enum | init_stages { uninitialized, started, topology_allocated, topology_loaded, topology_parsed } |
Private Member Functions | |
| bool | intergroup_binding_allowed (size_t groups_num) |
| platform_topology () | |
Private Attributes | |
| hwloc_topology_t | topology |
| hwloc_cpuset_t | process_cpu_affinity_mask |
| hwloc_nodeset_t | process_node_affinity_mask |
| std::vector< hwloc_cpuset_t > | affinity_masks_list |
| std::vector< int > | default_concurrency_list |
| std::vector< int > | numa_indexes_list |
| int | numa_nodes_count |
| enum tbb::internal::platform_topology::init_stages | initialization_state |
Friends | |
| class | numa_affinity_handler |
Definition at line 42 of file tbb_bind.cpp.
| typedef hwloc_cpuset_t tbb::internal::platform_topology::affinity_mask |
Definition at line 74 of file tbb_bind.cpp.
| typedef hwloc_const_cpuset_t tbb::internal::platform_topology::const_affinity_mask |
Definition at line 75 of file tbb_bind.cpp.
|
private |
| Enumerator | |
|---|---|
| uninitialized | |
| started | |
| topology_allocated | |
| topology_loaded | |
| topology_parsed | |
Definition at line 55 of file tbb_bind.cpp.
|
inlineprivate |
Definition at line 67 of file tbb_bind.cpp.
|
inline |
Definition at line 174 of file tbb_bind.cpp.
References affinity_masks_list, initialization_state, is_topology_parsed(), numa_indexes_list, numa_nodes_count, process_cpu_affinity_mask, process_node_affinity_mask, topology, topology_allocated, and uninitialized.
|
inline |
Definition at line 197 of file tbb_bind.cpp.
References __TBB_ASSERT, is_topology_parsed(), and process_cpu_affinity_mask.
Referenced by tbb::internal::binding_handler::binding_handler().
|
inline |
Definition at line 190 of file tbb_bind.cpp.
References __TBB_ASSERT, default_concurrency_list, is_topology_parsed(), numa_indexes_list, and numa_nodes_count.
Referenced by tbb::internal::initialize_numa_topology().
|
inline |
Definition at line 202 of file tbb_bind.cpp.
Referenced by tbb::internal::binding_handler::~binding_handler().
|
inline |
Definition at line 218 of file tbb_bind.cpp.
References __TBB_ASSERT, and affinity_masks_list.
|
inline |
Definition at line 84 of file tbb_bind.cpp.
References __TBB_ASSERT, affinity_masks_list, assertion_hwloc_wrapper, default_concurrency_list, initialization_state, intergroup_binding_allowed(), numa_indexes_list, numa_nodes_count, process_cpu_affinity_mask, process_node_affinity_mask, started, topology, topology_allocated, topology_loaded, topology_parsed, and uninitialized.
Referenced by tbb::internal::initialize_numa_topology().
|
inlinestatic |
Definition at line 77 of file tbb_bind.cpp.
References topology.
Referenced by tbb::internal::binding_handler::bind_thread_to_node(), tbb::internal::bind_to_node(), tbb::internal::binding_handler::binding_handler(), tbb::internal::initialize_numa_topology(), tbb::internal::restore_affinity(), tbb::internal::binding_handler::restore_previous_affinity_mask(), and tbb::internal::binding_handler::~binding_handler().
|
inlineprivate |
Definition at line 65 of file tbb_bind.cpp.
Referenced by initialize().
|
inline |
Definition at line 82 of file tbb_bind.cpp.
References initialization_state, and topology_parsed.
Referenced by allocate_process_affinity_mask(), fill(), and ~platform_topology().
|
inline |
Definition at line 214 of file tbb_bind.cpp.
References assertion_hwloc_wrapper, and topology.
Referenced by tbb::internal::binding_handler::bind_thread_to_node(), and tbb::internal::binding_handler::restore_previous_affinity_mask().
|
inline |
Definition at line 206 of file tbb_bind.cpp.
References __TBB_ASSERT, assertion_hwloc_wrapper, process_cpu_affinity_mask, and topology.
Referenced by tbb::internal::binding_handler::bind_thread_to_node().
|
friend |
Definition at line 43 of file tbb_bind.cpp.
|
private |
Definition at line 49 of file tbb_bind.cpp.
Referenced by get_node_affinity_mask(), initialize(), and ~platform_topology().
|
private |
Definition at line 51 of file tbb_bind.cpp.
Referenced by fill(), and initialize().
|
private |
Referenced by initialize(), is_topology_parsed(), and ~platform_topology().
|
private |
Definition at line 52 of file tbb_bind.cpp.
Referenced by fill(), initialize(), and ~platform_topology().
|
private |
Definition at line 53 of file tbb_bind.cpp.
Referenced by fill(), initialize(), and ~platform_topology().
|
private |
Definition at line 47 of file tbb_bind.cpp.
Referenced by allocate_process_affinity_mask(), initialize(), store_current_affinity_mask(), and ~platform_topology().
|
private |
Definition at line 48 of file tbb_bind.cpp.
Referenced by initialize(), and ~platform_topology().
|
private |
Definition at line 46 of file tbb_bind.cpp.
Referenced by initialize(), instance(), set_new_affinity_mask(), store_current_affinity_mask(), and ~platform_topology().