| 
    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().