Static Public Member Functions | Static Private Member Functions

oned::Nicol< T, Pr > Class Template Reference

[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>


Detailed Description

template<typename T, typename Pr>
class oned::Nicol< T, Pr >

[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.

List of all members.

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.

Member Function Documentation

template<typename T , typename Pr >
T oned::Nicol< T, Pr >::nicol ( int  procCount,
const Pr prefixSumArray,
int  length,
int *  cutIndexes,
T  max 
) [static]
Parameters:
[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.
Returns:
Load of the max. loaded processor
template<typename T , typename Pr >
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.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines