# tf::StaticPartitioner class

class to construct a dynamic partitioner for scheduling parallel algorithms

The partitioner divides iterations into chunks and distributes chunks to workers in order. If the chunk size is not specified (default `0`), the partitioner resorts to a chunk size that equally distributes iterations into workers.

    std::vector<int> data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
    taskflow.for_each(
      data.begin(), data.end(), [](int i){}, StaticPartitioner(0)
    );
    executor.run(taskflow).run();

## Base classes

class PartitionerBase
  class to derive a partitioner for scheduling parallel algorithms

## Constructors, destructors, conversion operators

StaticPartitioner()
  default constructor
StaticPartitioner(size_t sz) explicit
  construct a dynamic partitioner with the given chunk size

## Public functions

auto adjusted_chunk_size(size_t N, size_t W, size_t w) const -> size_t
  queries the adjusted chunk size

## Function documentation

### size_t tf::StaticPartitioner::adjusted_chunk_size(size_t N, size_t W, size_t w) const

queries the adjusted chunk size

Returns the given chunk size if it is not zero, or returns `N/W + (w < NW)`, where `N` is the number of iterations, `W` is the number of workers, and `w` is the worker ID.

Tab / T to search, Esc to close
…

Search for symbols, directories, files, pages or modules. You can omit any prefix from the symbol or file path; adding a `:` or `/` suffix lists all members of given symbol or directory.

Use ↓ / ↑ to navigate through the list, Enter to go. Tab autocompletes common prefix, you can copy a link to the result using ⌘ L while ⌘ M produces a Markdown link.

Sorry, nothing was found.