An optimal m-way jagged algorithm based on dynamic programming. More...
#include <twod/jagged_dp.hpp>
An optimal m-way jagged algorithm based on dynamic programming.
It selects the main dimension to get the best load. This class is implemented as a wrapper to twod::JagMOptHor and twod::JagMOptVer.
T | type of the load | |
Pr | type of the prefix sum array |
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 | ~JagMOptBest () |
virtual twod::JagMOptBest< T, Pr >::~JagMOptBest | ( | ) | [inline, virtual] |
T twod::JagMOptBest< T, Pr >::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 >.