hpx/compute/host/block_executor.hpp¶
See Public API for a list of names and headers that are part of the public HPX API.
-
template<typename
Executor
>
structexecutor_execution_category
<compute::host::block_executor<Executor>>¶ Public Types
-
typedef hpx::execution::parallel_execution_tag
type
-
typedef hpx::execution::parallel_execution_tag
-
namespace
hpx
-
namespace
compute
-
namespace
host
-
template<typename
Executor
= hpx::parallel::execution::restricted_thread_pool_executor>
structblock_executor
¶ - #include <block_executor.hpp>
The block executor can be used to build NUMA aware programs. It will distribute work evenly across the passed targets
- Template Parameters
Executor
: The underlying executor to use
Public Types
-
template<>
usingexecutor_parameters_type
= hpx::execution::static_chunk_size¶
Public Functions
-
block_executor
(std::vector<host::target> const &targets, threads::thread_priority priority = threads::thread_priority::high, threads::thread_stacksize stacksize = threads::thread_stacksize::default_, threads::thread_schedule_hint schedulehint = {})¶
-
block_executor
(block_executor const &other)¶
-
block_executor
(block_executor &&other)¶
-
block_executor &
operator=
(block_executor const &other)¶
-
block_executor &
operator=
(block_executor &&other)¶
-
template<typename
F
, typename ...Ts
>
hpx::future<typename hpx::util::detail::invoke_deferred_result<F, Ts...>::type>async_execute
(F &&f, Ts&&... ts)¶
-
template<typename
F
, typename ...Ts
>
hpx::util::detail::invoke_deferred_result<F, Ts...>::typesync_execute
(F &&f, Ts&&... ts)¶
-
template<typename
F
, typenameShape
, typename ...Ts
>
std::vector<hpx::future<typename parallel::execution::detail::bulk_function_result<F, Shape, Ts...>::type>>bulk_async_execute
(F &&f, Shape const &shape, Ts&&... ts)¶
Private Functions
-
void
init_executors
()¶
Private Members
-
threads::thread_priority
priority_
= threads::thread_priority::high¶
-
threads::thread_stacksize
stacksize_
= threads::thread_stacksize::default_¶
-
threads::thread_schedule_hint
schedulehint_
= {}¶
-
template<typename
-
namespace
-
namespace