Itoyori  v0.0.1
parallel_reduce.hpp File Reference
Include dependency graph for parallel_reduce.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 ityr
 

Functions

template<typename ExecutionPolicy , typename ForwardIterator , typename Reducer , typename UnaryTransformOp >
Reducer::accumulator_type ityr::transform_reduce (const ExecutionPolicy &policy, ForwardIterator first, ForwardIterator last, Reducer reducer, UnaryTransformOp unary_transform_op)
 Calculate reduction while transforming each element. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 , typename Reducer , typename BinaryTransformOp >
Reducer::accumulator_type ityr::transform_reduce (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2, Reducer reducer, BinaryTransformOp binary_transform_op)
 Calculate reduction by transforming each element. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 >
auto ityr::transform_reduce (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2)
 Calculate a dot product. More...
 
template<typename ExecutionPolicy , typename ForwardIterator , typename Reducer >
Reducer::accumulator_type ityr::reduce (const ExecutionPolicy &policy, ForwardIterator first, ForwardIterator last, Reducer reducer)
 Calculate reduction. More...
 
template<typename ExecutionPolicy , typename ForwardIterator >
std::iterator_traits< ForwardIterator >::value_type ityr::reduce (const ExecutionPolicy &policy, ForwardIterator first, ForwardIterator last)
 Calculate reduction. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIteratorD , typename Reducer , typename UnaryTransformOp >
ForwardIteratorD ityr::transform_inclusive_scan (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIteratorD first_d, Reducer reducer, UnaryTransformOp unary_transform_op, typename Reducer::accumulator_type &&init)
 Calculate a prefix sum (inclusive scan) while transforming each element. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIteratorD , typename Reducer , typename UnaryTransformOp >
ForwardIteratorD ityr::transform_inclusive_scan (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIteratorD first_d, Reducer reducer, UnaryTransformOp unary_transform_op)
 Calculate a prefix sum (inclusive scan) while transforming each element. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIteratorD , typename Reducer >
ForwardIteratorD ityr::inclusive_scan (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIteratorD first_d, Reducer reducer, typename Reducer::accumulator_type &&init)
 Calculate a prefix sum (inclusive scan). More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIteratorD , typename Reducer >
ForwardIteratorD ityr::inclusive_scan (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIteratorD first_d, Reducer reducer)
 Calculate a prefix sum (inclusive scan). More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIteratorD >
ForwardIteratorD ityr::inclusive_scan (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIteratorD first_d)
 Calculate a prefix sum (inclusive scan). More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 , typename BinaryPredicate >
bool ityr::equal (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2, BinaryPredicate pred)
 Check if two ranges have equal values. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 , typename BinaryPredicate >
bool ityr::equal (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred)
 Check if two ranges have equal values. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 >
bool ityr::equal (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2)
 Check if two ranges have equal values. More...
 
template<typename ExecutionPolicy , typename ForwardIterator1 , typename ForwardIterator2 >
bool ityr::equal (const ExecutionPolicy &policy, ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2, ForwardIterator2 last2)
 Check if two ranges have equal values. More...
 
template<typename ExecutionPolicy , typename ForwardIterator , typename Compare >
bool ityr::is_sorted (const ExecutionPolicy &policy, ForwardIterator first, ForwardIterator last, Compare comp)
 Check if a range is sorted. More...
 
template<typename ExecutionPolicy , typename ForwardIterator >
bool ityr::is_sorted (const ExecutionPolicy &policy, ForwardIterator first, ForwardIterator last)
 Check if a range is sorted. More...