Finds least max proc load value by applying binary search over it. First cut direction is horizontal. See section 3.2.2 PROBE-M algorithm of "E. Saule, E. O. Bas, U. V. Catalyurek, Load-Balancing Spatially Located Computations using Rectangular Partitions Paper, Tech. Report, ArXiv, no. arXiv:1104.2566v1, 2011". More...
#include <twod/m_way_probe.hpp>
Finds least max proc load value by applying binary search over it. First cut direction is horizontal. See section 3.2.2 PROBE-M algorithm of "E. Saule, E. O. Bas, U. V. Catalyurek, Load-Balancing Spatially Located Computations using Rectangular Partitions Paper, Tech. Report, ArXiv, no. arXiv:1104.2566v1, 2011".
Public Member Functions | |
virtual T | part (int procCount, const Pr &prefixSumArray, util::RectList< T, Pr > &parts) |
Applies a 2d partitioning algorithm to a given 2d prefixSumArray . | |
virtual | ~JagMHeurProbeHor () |
Private Member Functions | |
T | multiarraypart (int procCount, const util::Multiarrays< T, util::Aggreg2Dto1D< T, Pr, false > > &arrs, T ub, int *procs, int **cuts) |
twod::JagMHeurProbeHor< T, Pr, onedalgoY, onedalgoX >::~JagMHeurProbeHor | ( | ) | [virtual] |
T twod::JagMHeurProbeHor< T, Pr, onedalgoY, onedalgoX >::multiarraypart | ( | int | procCount, | |
const util::Multiarrays< T, util::Aggreg2Dto1D< T, Pr, false > > & | arrs, | |||
T | ub, | |||
int * | procs, | |||
int ** | cuts | |||
) | [private] |
T twod::JagMHeurProbeHor< T, Pr, onedalgoY, onedalgoX >::part | ( | int | procCount, | |
const Pr & | prefixSumArray, | |||
util::RectList< T, Pr > & | parts | |||
) | [virtual] |
Applies a 2d partitioning algorithm to a given 2d prefixSumArray .
[in] | procCount | is the number of processors |
[in] | prefixSumArray | first column and first row consists of zero only. But the borders of rectangles in rect_list never touch this area (index 0 in row or column) |
[out] | parts | must be empty before calling this function. It will contain the partition after the function return |
Implements twod::PartBase< T, Pr >.