Itoyori  v0.0.1
ityr::execution::parallel_policy< W > Struct Template Reference

Parallel execution policy for iterator-based loop functions. More...

#include <execution.hpp>

Collaboration diagram for ityr::execution::parallel_policy< W >:

Public Member Functions

constexpr parallel_policy () noexcept
 
constexpr parallel_policy (std::size_t cutoff_count) noexcept
 
constexpr parallel_policy (std::size_t cutoff_count, std::size_t checkout_count) noexcept
 
 parallel_policy (const workhint_range< W > &workhint) noexcept
 
 parallel_policy (std::size_t cutoff_count, const workhint_range< W > &workhint) noexcept
 
 parallel_policy (std::size_t cutoff_count, std::size_t checkout_count, const workhint_range< W > &workhint) noexcept
 
 parallel_policy (workhint_range_view< W > workhint) noexcept
 
 parallel_policy (std::size_t cutoff_count, workhint_range_view< W > workhint) noexcept
 
 parallel_policy (std::size_t cutoff_count, std::size_t checkout_count, workhint_range_view< W > workhint) noexcept
 

Public Attributes

std::size_t cutoff_count = 1
 The maximum number of elements to check out at the same time if automatic checkout is enabled. More...
 
std::size_t checkout_count = 1
 The number of elements for leaf tasks to stop parallel recursion. More...
 
workhint_range_view< W > workhint
 Work hints for ADWS. More...
 

Detailed Description

template<typename W = void>
struct ityr::execution::parallel_policy< W >

Parallel execution policy for iterator-based loop functions.

See also
std::execution – cppreference.com
ityr::execution::par
ityr::execution::parallel_policy
ityr::for_each()

Constructor & Destructor Documentation

◆ parallel_policy() [1/9]

template<typename W = void>
constexpr ityr::execution::parallel_policy< W >::parallel_policy ( )
inlineconstexprnoexcept

◆ parallel_policy() [2/9]

template<typename W = void>
constexpr ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count)
inlineconstexprnoexcept

◆ parallel_policy() [3/9]

template<typename W = void>
constexpr ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count,
std::size_t  checkout_count 
)
inlineconstexprnoexcept

◆ parallel_policy() [4/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( const workhint_range< W > &  workhint)
inlinenoexcept

◆ parallel_policy() [5/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count,
const workhint_range< W > &  workhint 
)
inlinenoexcept

◆ parallel_policy() [6/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count,
std::size_t  checkout_count,
const workhint_range< W > &  workhint 
)
inlinenoexcept

◆ parallel_policy() [7/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( workhint_range_view< W >  workhint)
inlinenoexcept

◆ parallel_policy() [8/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count,
workhint_range_view< W >  workhint 
)
inlinenoexcept

◆ parallel_policy() [9/9]

template<typename W = void>
ityr::execution::parallel_policy< W >::parallel_policy ( std::size_t  cutoff_count,
std::size_t  checkout_count,
workhint_range_view< W >  workhint 
)
inlinenoexcept

Member Data Documentation

◆ checkout_count

template<typename W = void>
std::size_t ityr::execution::parallel_policy< W >::checkout_count = 1

The number of elements for leaf tasks to stop parallel recursion.

◆ cutoff_count

template<typename W = void>
std::size_t ityr::execution::parallel_policy< W >::cutoff_count = 1

The maximum number of elements to check out at the same time if automatic checkout is enabled.

◆ workhint

template<typename W = void>
workhint_range_view<W> ityr::execution::parallel_policy< W >::workhint

Work hints for ADWS.


The documentation for this struct was generated from the following file: