libjmmcg
release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
|
A modifier that enables dividing the thread_pool into a number of equal-sized cliques of pool_threads. More...
#include <thread_dsel_types.hpp>
Public Types | |
typedef std::size_t | element_type |
Public Member Functions | |
constexpr | cliques (element_type c) noexcept(true) FORCE_INLINE |
Public Attributes | |
const element_type | number |
The number of cliques into which the thread_pool should be divided. More... | |
A modifier that enables dividing the thread_pool into a number of equal-sized cliques of pool_threads.
It applies only to parallel algorithms (a compile-time error will result if it is used with an incompatible closure_base-derived closure type).
Definition at line 36 of file thread_dsel_types.hpp.
typedef std::size_t jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::cliques::element_type |
Definition at line 37 of file thread_dsel_types.hpp.
|
inlineexplicitconstexprnoexcept |
Definition at line 45 of file thread_dsel_types.hpp.
References number.
Referenced by BOOST_AUTO_TEST_CASE_TEMPLATE().
const element_type jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::cliques::number |
The number of cliques into which the thread_pool should be divided.
This is useful for limiting the number of tasks a parallel algorithm may automatically generate, so as to avoid swamping the thread_pool with tasks, and therefore causing excessive horizontal threading. (Horizontal threads are always dynamically generated, whereas vertical pool_threads may be precached in the thread_pool.
Definition at line 43 of file thread_dsel_types.hpp.
Referenced by cliques(), jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::joinable_t< TPB >::operator<<(), and jmmcg::LIBJMMCG_VER_NAMESPACE::ppd::private_::nonjoinable_t< TPB >::operator<<().