|
virtual void | loadBalanceBoxes (SAMRAI::hier::BoxArray< NDIM > &out_boxes, SAMRAI::hier::ProcessorMapping &mapping, const SAMRAI::hier::BoxList< NDIM > &in_boxes, const SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, const SAMRAI::hier::BoxArray< NDIM > &physical_domain, const SAMRAI::hier::IntVector< NDIM > &ratio_to_hierarchy_level_zero, const SAMRAI::hier::IntVector< NDIM > &min_size, const SAMRAI::hier::IntVector< NDIM > &max_size, const SAMRAI::hier::IntVector< NDIM > &cut_factor, const SAMRAI::hier::IntVector< NDIM > &bad_interval) const override |
|
| LoadBalancer (const std::string &name, tbox::Pointer< tbox::Database > input_db=(tbox::Database *) NULL) |
|
| LoadBalancer (tbox::Pointer< tbox::Database > input_db=(tbox::Database *) NULL) |
|
void | setMaxWorkloadFactor (double factor, int level_number=-1) |
|
void | setWorkloadTolerance (double tolerance, int level_number=-1) |
|
void | setWorkloadPatchDataIndex (int data_id, int level_number=-1) |
|
void | setUniformWorkload (int level_number=-1) |
|
void | setBinPackMethod (const std::string &method, int level_number=-1) |
|
void | setIgnoreLevelDomainIsSingleBox (bool flag) |
|
bool | getLoadBalanceDependsOnPatchData (int level_number) const |
|
void | loadBalanceBoxes (hier::BoxArray< NDIM > &out_boxes, hier::ProcessorMapping &mapping, const hier::BoxList< NDIM > &in_boxes, const tbox::Pointer< hier::PatchHierarchy< NDIM > > hierarchy, int level_number, const hier::BoxArray< NDIM > &physical_domain, const hier::IntVector< NDIM > &ratio_to_hierarchy_level_zero, const hier::IntVector< NDIM > &min_size, const hier::IntVector< NDIM > &max_size, const hier::IntVector< NDIM > &cut_factor, const hier::IntVector< NDIM > &bad_interval) const |
|
virtual void | printClassData (std::ostream &os) const |
|
virtual void | loadBalanceBoxes (hier::BoxArray< DIM > &out_boxes, hier::ProcessorMapping &mapping, const hier::BoxList< DIM > &in_boxes, const tbox::Pointer< hier::PatchHierarchy< DIM > > hierarchy, const int level_number, const hier::BoxArray< DIM > &physical_domain, const hier::IntVector< DIM > &ratio_to_hierarchy_level_zero, const hier::IntVector< DIM > &min_size, const hier::IntVector< DIM > &max_size, const hier::IntVector< DIM > &cut_factor, const hier::IntVector< DIM > &bad_interval) const=0 |
|
Class MergingLoadBalancer merges the boxes generated by a load balancer in a final step to decrease the total number of boxes. In essence, it postprocesses the list of boxes generated by its parent class to try and coalesce the set of boxes on each process.
- Note
- During regridding, the boxes generated by this class are subsequently read by GriddingAlgorithm, which will enforce minimum and maximum size constraints; i.e., to take full advantage of this class one must set up the GriddingAlgorithm objects to have very large maximum box sizes.