35 #ifndef _GLIBCXX_PARALLEL_FOR_EACH_H
36 #define _GLIBCXX_PARALLEL_FOR_EACH_H 1
43 namespace __gnu_parallel
58 template<
typename InputIterator,
typename UserOp,
59 typename Functionality,
typename Red,
typename Result>
63 Functionality& functionality,
64 Red reduction, Result reduction_start,
65 Result& output,
typename
67 difference_type bound,
72 functionality, reduction,
Parallelization of embarrassingly parallel execution by means of an OpenMP for loop. This file is a GNU parallel extension to the Standard C++ Library.
Parallel unbalanced (equal-sized chunks).
Parallel with OpenMP static load-balancing.
_Parallelism
Run-time equivalents for the compile-time tags.
Runtime settings and tuning parameters, heuristics to decide whether to use parallelized algorithms...
Op for_each_template_random_access_workstealing(RandomAccessIterator begin, RandomAccessIterator end, Op op, Fu &f, Red r, Result base, Result &output, typename std::iterator_traits< RandomAccessIterator >::difference_type bound)
Work stealing algorithm for random access iterators.
UserOp for_each_template_random_access(InputIterator begin, InputIterator end, UserOp user_op, Functionality &functionality, Red reduction, Result reduction_start, Result &output, typename std::iterator_traits< InputIterator >::difference_type bound, _Parallelism parallelism_tag)
Chose the desired algorithm by evaluating parallelism_tag.
Op for_each_template_random_access_ed(RandomAccessIterator begin, RandomAccessIterator end, Op o, Fu &f, Red r, Result base, Result &output, typename std::iterator_traits< RandomAccessIterator >::difference_type bound)
Embarrassingly parallel algorithm for random access iterators, using hand-crafted parallelization by ...
Op for_each_template_random_access_omp_loop(RandomAccessIterator begin, RandomAccessIterator end, Op o, Fu &f, Red r, Result base, Result &output, typename std::iterator_traits< RandomAccessIterator >::difference_type bound)
Embarrassingly parallel algorithm for random access iterators, using an OpenMP for loop...
Parallelization of embarrassingly parallel execution by means of work-stealing.
Parallel with OpenMP dynamic load-balancing.
Parallelization of embarrassingly parallel execution by means of equal splitting. This file is a GNU ...