hpx/executors/parallel_executor.hpp
hpx/executors/parallel_executor.hpp#
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace hpx
-
namespace execution
Typedefs
-
using parallel_executor = parallel_policy_executor<hpx::launch>#
-
template<typename Policy>
struct parallel_policy_executor# - #include <parallel_executor.hpp>
A parallel_executor creates groups of parallel execution agents which execute in threads implicitly created by the executor. This executor prefers continuing with the creating thread first before executing newly created threads.
This executor conforms to the concepts of a TwoWayExecutor, and a BulkTwoWayExecutor
Public Types
-
using execution_category = parallel_execution_tag#
Associate the parallel_execution_tag executor tag type as a default with this executor.
-
using executor_parameters_type = static_chunk_size#
Associate the static_chunk_size executor parameters type as a default with this executor.
Public Functions
-
inline explicit constexpr parallel_policy_executor(threads::thread_priority priority, threads::thread_stacksize stacksize = threads::thread_stacksize::default_, threads::thread_schedule_hint schedulehint = {}, Policy l = parallel::execution::detail::get_default_policy<Policy>::call(), std::size_t hierarchical_threshold = hierarchical_threshold_default_)#
Create a new parallel executor.
-
inline explicit constexpr parallel_policy_executor(threads::thread_stacksize stacksize, threads::thread_schedule_hint schedulehint = {}, Policy l = parallel::execution::detail::get_default_policy<Policy>::call())#
-
inline explicit constexpr parallel_policy_executor(threads::thread_schedule_hint schedulehint, Policy l = parallel::execution::detail::get_default_policy<Policy>::call())#
-
inline explicit constexpr parallel_policy_executor(Policy l = parallel::execution::detail::get_default_policy<Policy>::call())#
-
inline explicit constexpr parallel_policy_executor(threads::thread_pool_base *pool, threads::thread_priority priority = threads::thread_priority::default_, threads::thread_stacksize stacksize = threads::thread_stacksize::default_, threads::thread_schedule_hint schedulehint = {}, Policy l = parallel::execution::detail::get_default_policy<Policy>::call(), std::size_t hierarchical_threshold = hierarchical_threshold_default_)#
Friends
- inline friend constexpr friend parallel_policy_executor tag_invoke (hpx::execution::experimental::with_hint_t, parallel_policy_executor const &exec, hpx::threads::thread_schedule_hint hint)
- inline friend constexpr friend hpx::threads::thread_schedule_hint tag_invoke (hpx::execution::experimental::get_hint_t, parallel_policy_executor const &exec) noexcept
- inline friend constexpr friend parallel_policy_executor tag_invoke (hpx::execution::experimental::with_priority_t, parallel_policy_executor const &exec, hpx::threads::thread_priority priority)
- inline friend constexpr friend hpx::threads::thread_priority tag_invoke (hpx::execution::experimental::get_priority_t, parallel_policy_executor const &exec) noexcept
- inline friend constexpr friend parallel_policy_executor tag_dispatch (hpx::execution::experimental::with_stacksize_t, parallel_policy_executor const &exec, hpx::threads::thread_stacksize stacksize)
- inline friend constexpr friend hpx::threads::thread_stacksize tag_dispatch (hpx::execution::experimental::get_stacksize_t, parallel_policy_executor const &exec) noexcept
- inline friend constexpr friend parallel_policy_executor tag_invoke (hpx::execution::experimental::with_annotation_t, parallel_policy_executor const &exec, char const *annotation)
-
inline friend parallel_policy_executor tag_invoke(hpx::execution::experimental::with_annotation_t, parallel_policy_executor const &exec, std::string annotation)#
- inline friend constexpr friend char const * tag_invoke (hpx::execution::experimental::get_annotation_t, parallel_policy_executor const &exec) noexcept
- inline friend constexpr friend parallel_policy_executor tag_invoke (hpx::parallel::execution::with_processing_units_count_t, parallel_policy_executor const &exec, std::size_t num_cores)
- template<typename Parameters> inline friend constexpr friend std::size_t tag_invoke (hpx::parallel::execution::processing_units_count_t, Parameters &&, parallel_policy_executor const &exec)
-
using execution_category = parallel_execution_tag#
-
using parallel_executor = parallel_policy_executor<hpx::launch>#
-
namespace parallel
-
namespace execution
-
namespace execution
-
namespace execution