|
|
template<typename... Args> |
| | Subflow (Args &&... args) |
| | constructs a subflow builder object
|
| |
|
void | join () |
| | enables the subflow to join its parent task
|
| |
|
void | detach () |
| | enables the subflow to detach from its parent task
|
| |
|
bool | detached () const |
| | queries if the subflow will be detached from its parent task
|
| |
|
bool | joined () const |
| | queries if the subflow will join its parent task
|
| |
| | FlowBuilder (Graph &graph) |
| | construct a flow builder object More...
|
| |
| template<typename C > |
| Task | emplace (C &&callable) |
| | creates a task from a given callable object More...
|
| |
| template<typename... C, std::enable_if_t<(sizeof...(C)> 1> |
| auto | emplace (C &&... callables) |
| | creates multiple tasks from a list of callable objects at one time More...
|
| |
|
template<typename C > |
| Task | silent_emplace (C &&callable) |
| | the same as tf::FlowBuilder::emplace (starting at 2.1.0)
|
| |
|
template<typename... C, std::enable_if_t<(sizeof...(C)> 1> |
| auto | silent_emplace (C &&... callables) |
| | the same as tf::FlowBuilder::emplace (starting at 2.1.0)
|
| |
| template<typename I , typename C > |
| std::pair< Task, Task > | parallel_for (I beg, I end, C &&callable, size_t partitions=0) |
| | constructs a task dependency graph of range-based parallel_for More...
|
| |
| template<typename I , typename C , std::enable_if_t< std::is_arithmetic_v< I >, void > * = nullptr> |
| std::pair< Task, Task > | parallel_for (I beg, I end, I step, C &&callable, size_t partitions=0) |
| | constructs a task dependency graph of index-based parallel_for More...
|
| |
| template<typename I , typename T , typename B > |
| std::pair< Task, Task > | reduce (I beg, I end, T &result, B &&bop) |
| | construct a task dependency graph of parallel reduction More...
|
| |
| template<typename I , typename T > |
| std::pair< Task, Task > | reduce_min (I beg, I end, T &result) |
| | constructs a task dependency graph of parallel reduction through std::min More...
|
| |
| template<typename I , typename T > |
| std::pair< Task, Task > | reduce_max (I beg, I end, T &result) |
| | constructs a task dependency graph of parallel reduction through std::max More...
|
| |
| template<typename I , typename T , typename B , typename U > |
| std::pair< Task, Task > | transform_reduce (I beg, I end, T &result, B &&bop, U &&uop) |
| | constructs a task dependency graph of parallel transformation and reduction More...
|
| |
| template<typename I , typename T , typename B , typename P , typename U > |
| std::pair< Task, Task > | transform_reduce (I beg, I end, T &result, B &&bop1, P &&bop2, U &&uop) |
| | constructs a task dependency graph of parallel transformation and reduction More...
|
| |
| Task | placeholder () |
| | creates an empty task More...
|
| |
| void | precede (Task A, Task B) |
| | adds a dependency link from task A to task B More...
|
| |
| void | linearize (std::vector< Task > &tasks) |
| | adds adjacent dependency links to a linear list of tasks More...
|
| |
| void | linearize (std::initializer_list< Task > tasks) |
| | adds adjacent dependency links to a linear list of tasks More...
|
| |
| void | broadcast (Task A, std::vector< Task > &others) |
| | adds dependency links from one task A to many tasks More...
|
| |
| void | broadcast (Task A, std::initializer_list< Task > others) |
| | adds dependency links from one task A to many tasks More...
|
| |
| void | gather (std::vector< Task > &others, Task A) |
| | adds dependency links from many tasks to one task A More...
|
| |
| void | gather (std::initializer_list< Task > others, Task A) |
| | adds dependency links from many tasks to one task A More...
|
| |
The building blocks of dynamic tasking.