tf::RandomPartitioner class

class to construct a random partitioner for scheduling parallel algorithms

Similar to tf::DynamicPartitioner, the partitioner splits iterations into many partitions but each with a random chunk size in the range, c = [alpha * N * W, beta * N * W]. By default, alpha is 0.01 and beta is 0.5, respectively.

Base classes

class PartitionerBase
class to derive a partitioner for scheduling parallel algorithms

Constructors, destructors, conversion operators

RandomPartitioner() defaulted
default constructor
RandomPartitioner(size_t cz)
constructs a random partitioner
RandomPartitioner(float alpha, float beta)
constructs a random partitioner with the given parameters

Public functions

auto alpha() const -> float
queries the alpha value
auto beta() const -> float
queries the beta value
auto chunk_size_range(size_t N, size_t W) const -> std::pair<size_t, size_t>
queries the range of chunk size

Function documentation

std::pair<size_t, size_t> tf::RandomPartitioner::chunk_size_range(size_t N, size_t W) const

queries the range of chunk size

Parameters
N number of iterations
W number of workers