34 #ifndef __H__UG_process_hierarchy
35 #define __H__UG_process_hierarchy
46 class ProcessHierarchy;
77 const std::vector<int>&
cluster_procs(
size_t hierarchyLevel)
const;
114 size_t numProcsPerProc);
location name
Definition: checkpoint_util.lua:128
Definition: smart_pointer.h:296
Definition: pcl_process_communicator.h:70
Defines how the different levels of a grid shall be distributed across the available processes.
Definition: process_hierarchy.h:55
std::vector< HLevelInfo > m_levels
Definition: process_hierarchy.h:117
std::string to_string() const
Returns a string which describes the hierarchy layout.
Definition: load_balancer.cpp:205
size_t hierarchy_level_from_grid_level(size_t gridLevel) const
Definition: load_balancer.cpp:176
bool partition_hint(Variant &valOut, int hlvl, const std::string &name) const
returns true if the queried partition hint exists and writes it value to 'valOut'
Definition: load_balancer.cpp:227
void init_cluster_procs(std::vector< int > &clusterProcs, size_t hlvl, size_t numProcsPerProc)
Definition: load_balancer.cpp:115
std::map< std::string, Variant > PartitionHintMap
Definition: process_hierarchy.h:97
void add_hierarchy_level(size_t gridLvl, size_t numProcsPerProc)
Definition: load_balancer.cpp:54
size_t num_global_procs_involved(size_t hierarchyLevel) const
Definition: load_balancer.cpp:164
pcl::ProcessCommunicator global_proc_com(size_t hierarchyLevel) const
Definition: load_balancer.cpp:193
void add_partition_hint(int hlvl, const std::string &name, const Variant &value)
allows specification of partitioning hints per hierarchy level.
Definition: load_balancer.cpp:219
const std::vector< int > & cluster_procs(size_t hierarchyLevel) const
Definition: load_balancer.cpp:199
size_t grid_base_level(size_t hierarchyLevel) const
Definition: load_balancer.cpp:170
static SPProcessHierarchy create()
Definition: process_hierarchy.h:57
size_t num_hierarchy_levels() const
Definition: load_balancer.cpp:158
bool empty() const
Definition: load_balancer.cpp:152
const HLevelInfo & get_hlevel_info(size_t lvl) const
Definition: process_hierarchy.h:109
HLevelInfo & get_hlevel_info(size_t lvl)
Definition: process_hierarchy.h:108
~ProcessHierarchy()
Definition: load_balancer.cpp:49
A variant can represent variables of different types.
Definition: variant.h:87
SmartPtr< ProcessHierarchy > SPProcessHierarchy
Definition: process_hierarchy.h:46
ConstSmartPtr< ProcessHierarchy > ConstSPProcessHierarchy
Definition: process_hierarchy.h:48
Definition: process_hierarchy.h:99
size_t numGlobalProcsInUse
Definition: process_hierarchy.h:104
PartitionHintMap m_partitionHints
Definition: process_hierarchy.h:105
size_t gridLvl
Definition: process_hierarchy.h:103
pcl::ProcessCommunicator globalCom
Definition: process_hierarchy.h:100
std::vector< int > clusterProcs
Definition: process_hierarchy.h:102