GrPPI
1.0
Generic and Reusable Parallel Pattern Interface
|
#include "worker_pool.h"
#include "../common/mpmc_queue.h"
#include "../common/iterator.h"
#include "../common/execution_traits.h"
#include <thread>
#include <atomic>
#include <algorithm>
#include <vector>
#include <type_traits>
#include <tuple>
#include <experimental/optional>
Go to the source code of this file.
Classes | |
class | grppi::thread_registry |
Thread index table to provide portable natural thread indices. More... | |
class | grppi::native_thread_manager |
RAII class to manage registration/deregistration pairs. This class allows to manage automatic deregistration of threads through the common RAII pattern. The current thread is registered into the registry at construction and deregistered a destruction. More... | |
class | grppi::parallel_execution_native |
Native parallel execution policy. This policy uses ISO C++ threads as implementation building block allowing usage in any ISO C++ compliant platform. More... | |
Namespaces | |
grppi | |
Functions | |
template<typename E > | |
constexpr bool | grppi::is_parallel_execution_native () |
Metafunction that determines if type E is parallel_execution_native. More... | |
template<> | |
constexpr bool | grppi::is_supported< parallel_execution_native > () |
Determines if an execution policy is supported in the current compilation. More... | |
template<> | |
constexpr bool | grppi::supports_map< parallel_execution_native > () |
Determines if an execution policy supports the map pattern. More... | |
template<> | |
constexpr bool | grppi::supports_reduce< parallel_execution_native > () |
Determines if an execution policy supports the reduce pattern. More... | |
template<> | |
constexpr bool | grppi::supports_map_reduce< parallel_execution_native > () |
Determines if an execution policy supports the map-reduce pattern. More... | |
template<> | |
constexpr bool | grppi::supports_stencil< parallel_execution_native > () |
Determines if an execution policy supports the stencil pattern. More... | |
template<> | |
constexpr bool | grppi::supports_divide_conquer< parallel_execution_native > () |
Determines if an execution policy supports the divide/conquer pattern. More... | |
template<> | |
constexpr bool | grppi::supports_pipeline< parallel_execution_native > () |
Determines if an execution policy supports the pipeline pattern. More... | |