hpx::execution::experimental::auto_chunk_size
hpx::execution::experimental::auto_chunk_size#
Defined in header hpx/execution.hpp.
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace hpx
-
namespace execution
-
namespace experimental
-
struct auto_chunk_size#
- #include <auto_chunk_size.hpp>
Loop iterations are divided into pieces and then assigned to threads. The number of loop iterations combined is determined based on measurements of how long the execution of 1% of the overall number of iterations takes. This executor parameters type makes sure that as many loop iterations are combined as necessary to run for the amount of time specified.
Public Functions
-
inline explicit constexpr auto_chunk_size(std::uint64_t num_iters_for_timing = 0) noexcept#
Construct an auto_chunk_size executor parameters object
Note
Default constructed auto_chunk_size executor parameter types will use 80 microseconds as the minimal time for which any of the scheduled chunks should run.
-
inline explicit auto_chunk_size(hpx::chrono::steady_duration const &rel_time, std::uint64_t num_iters_for_timing = 0) noexcept#
Construct an auto_chunk_size executor parameters object
- Parameters
rel_time – [in] The time duration to use as the minimum to decide how many loop iterations should be combined.
num_iters_for_timing – [in] The number of iterations to use for the timing operation
-
inline explicit constexpr auto_chunk_size(std::uint64_t num_iters_for_timing = 0) noexcept#
-
struct auto_chunk_size#
-
namespace experimental
-
namespace execution