Manages the launch conditions for aggregated function calls type/value-errors.
More...
|
| | aggregated_function_call (const size_t number_slices, bool async_mode, Executor &exec) |
| |
| | ~aggregated_function_call (void) |
| |
| bool | sync_aggregation_slices (hpx::future< void > &stream_future) |
| | Returns true if all required slices have visited this point.
|
| |
| template<typename F , typename... Ts> |
| void | post_when (hpx::future< void > &stream_future, F &&f, Ts &&...ts) |
| |
| template<typename F , typename... Ts> |
| hpx::future< void > | async_when (hpx::future< void > &stream_future, F &&f, Ts &&...ts) |
| |
| template<typename F , typename... Ts> |
| hpx::shared_future< void > | wrap_async (hpx::future< void > &stream_future, F &&f, Ts &&...ts) |
| |
| | aggregated_function_call (const aggregated_function_call &other)=default |
| |
| aggregated_function_call & | operator= (const aggregated_function_call &other)=default |
| |
| | aggregated_function_call (aggregated_function_call &&other)=default |
| |
| aggregated_function_call & | operator= (aggregated_function_call &&other)=default |
| |
template<
typename Executor>
class cppuddle::kernel_aggregation::detail::aggregated_function_call< Executor >
Manages the launch conditions for aggregated function calls type/value-errors.
Launch conditions: All slice executors must have called the same function (tracked by future all_slices_ready) AND Previous aggregated_function_call on the same Executor must have been launched (tracked by future stream_future) All function calls received from the slice executors are checked if they match the first one in both types and values (throws exception otherwise)