hpx::experimental::run_on_all#

Defined in header hpx/task_block.hpp.

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx
namespace experimental

Top-level namespace.

Functions

template<typename ExPolicy, typename T, typename... Ts>  requires (hpx::is_execution_policy_v< ExPolicy >) decltype(auto) run_on_all(ExPolicy &&policy

Run a function on all available worker threads with reduction support using the given execution policy

Template Parameters
  • ExPolicy – The execution policy type

  • T – The first type in a list of reduction types and the function type to invoke (last argument)

  • Ts – The list of reduction types and the function type to invoke (last argument)

Parameters
  • policy – The execution policy to use

  • t – The first in a list of reductions and the function to invoke (last argument)

  • ts – The list of reductions and the function to invoke (last argument)

template<typename T, typename... Ts>  requires (!hpx::is_execution_policy_v< T >) decltype(auto) run_on_all(T &&t

Run a function on all available worker threads with reduction support using the hpx::execution::par execution policy

Template Parameters
  • T – The first type in a list of reduction types and the function type to invoke (last argument)

  • Ts – The list of reduction types and the function type to invoke (last argument)

Parameters
  • t – The first in a list of reductions and the function to invoke (last argument)

  • ts – The list of reductions and the function to invoke (last argument)

Variables

T &&t#
T Ts && ts  {return detail::run_on_all(HPX_FORWARD(ExPolicy, policy),hpx::util::make_index_pack_t<sizeof...(Ts)>(), HPX_FORWARD(T, t),HPX_FORWARD(Ts, ts)...)