GrPPI  0.2
Generic and Reusable Parallel Pattern Interface
Modules | Functions
Stream reduce pattern

Interface for applying the Stream reduction pattern. More...

Collaboration diagram for Stream reduce pattern:

Modules

 Native parallel stream reduce pattern
 Native parallel implementation of the Stream reduction pattern.
 
 OpenMP parallel stream reduce pattern
 OpenMP parallel implementation of the Stream reduction pattern.
 
 Polymorphic parallel stream reduce pattern
 Polymorphic parallel implementation of the Stream reduction pattern.
 
 Sequential stream reduce pattern
 Sequential implementation of the Stream reduction pattern.
 
 TBB parallel stream reduce pattern
 TBB parallel implementation of the Stream reduction pattern.
 

Functions

template<typename Execution , typename Identity , typename Combiner >
auto grppi::stream_reduce (Execution &ex, int window_size, int offset, Identity identity, Combiner &&combine_op)
 Invoke Stream reduction pattern on a stream that can be composed in other streaming patterns. More...
 

Detailed Description

Interface for applying the Stream reduction pattern.

Function Documentation

template<typename Execution , typename Identity , typename Combiner >
auto grppi::stream_reduce ( Execution &  ex,
int  window_size,
int  offset,
Identity  identity,
Combiner &&  combine_op 
)

Invoke Stream reduction pattern on a stream that can be composed in other streaming patterns.

Template Parameters
IdentityType of the identity value used by the combiner.
CombinerCallable type used for data items combination.
Parameters
exSequential execution policy object.
window_sizeNumber of consecutive items to be reduced.
offsetNumber of items after of which a new reduction is started.
identityIdentity value for the combination.
combine_opCombination operation.