[Use NicolPlus instead] this is the implementation of the nicols algorithm as it is provided in "Ali Pinar and Cevdet Aykanat, Fast Optimal Load Balancing Algorithms for 1D Partitioning, JPDC, 2004" in figure 5b. NicolPlus should be preferred over Nicol due to speed. More...
#include <oned/nicol.hpp>
[Use NicolPlus instead] this is the implementation of the nicols algorithm as it is provided in "Ali Pinar and Cevdet Aykanat, Fast Optimal Load Balancing Algorithms for 1D Partitioning, JPDC, 2004" in figure 5b. NicolPlus should be preferred over Nicol due to speed.
Static Public Member Functions | |
static T | nicol (int procCount, const Pr &prefixSumArray, int length, int *cutIndexes, T max) |
Static Private Member Functions | |
static T | nicol_internal (const Pr &w, int n, int p, T upperbound=-1) |
upperbound an upper bound on the value of theoptimal partitioning. Use -1 if unknown. |
T oned::Nicol< T, Pr >::nicol | ( | int | procCount, | |
const Pr & | prefixSumArray, | |||
int | length, | |||
int * | cutIndexes, | |||
T | max | |||
) | [static] |
[in] | procCount | is the number of processors |
[in] | prefixSumArray | Prefix sum array that always starts with value 0 in the 0th |
[in] | length | is the length of prefixSumArray |
[out] | cutIndexes | (must be allocated before calling!) |
[in] | max | maximum element of the array. |
T oned::Nicol< T, Pr >::nicol_internal | ( | const Pr & | w, | |
int | n, | |||
int | p, | |||
T | upperbound = -1 | |||
) | [static, private] |
upperbound an upper bound on the value of theoptimal partitioning. Use -1 if unknown.