|
Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Classes | |
| struct | adaptive_mode |
| Provides default splitting strategy for partition objects. More... | |
| class | affinity_partition_type |
| class | auto_partition_type |
| class | do_group_task |
| class | do_group_task_forward |
| For internal use only. More... | |
| class | do_group_task_input |
| class | do_iteration_task |
| For internal use only. More... | |
| class | do_iteration_task_iter |
| class | do_task_iter |
| For internal use only. More... | |
| struct | dynamic_grainsize_mode |
| class | finish_deterministic_reduce |
| Task type used to combine the partial results of parallel_deterministic_reduce. More... | |
| class | finish_reduce |
| Task type used to combine the partial results of parallel_reduce. More... | |
| class | flag_task |
| Join task node that contains shared flag for stealing feedback. More... | |
| struct | linear_affinity_mode |
| Provides default linear indexing of partitioner's sequence. More... | |
| class | old_auto_partition_type |
| Backward-compatible partition for auto and affinity partition objects. More... | |
| class | parallel_do_feeder_impl |
| For internal use only. More... | |
| class | parallel_do_operator_selector |
| For internal use only. More... | |
| struct | partition_type_base |
| Provides default methods for partition objects and common algorithm blocks. More... | |
| struct | proportion_helper |
| A helper class to create a proportional_split object for a given type of Range. More... | |
| struct | proportion_helper< Range, typename enable_if< Range::is_splittable_in_proportion, void >::type > |
| struct | proportional_mode |
| Provides proportional splitting strategy for partition objects. More... | |
| struct | quick_sort_body |
| Body class used to sort elements in a range that is smaller than the grainsize. More... | |
| class | quick_sort_pretest_body |
| Body class used to test if elements in a range are presorted. More... | |
| class | quick_sort_range |
| Range used in quicksort to split elements into subranges based on a value. More... | |
| class | range_vector |
| Range pool stores ranges of type T in a circular buffer with MaxCapacity. More... | |
| class | simple_partition_type |
| class | start_deterministic_reduce |
| Task type used to split the work of parallel_deterministic_reduce. More... | |
| class | start_for |
| Task type used in parallel_for. More... | |
| class | start_reduce |
| Task type used to split the work of parallel_reduce. More... | |
| class | static_partition_type |
Typedefs | |
| typedef char | reduction_context |
| typedef unsigned char | depth_t |
Enumerations | |
| enum | { root_task, left_child, right_child } |
Functions | |
| template<typename Iterator , typename Body , typename Item > | |
| void | run_parallel_do (Iterator first, Iterator last, const Body &body, task_group_context &context) |
| For internal use only. More... | |
| template<typename Iterator , typename Body , typename Item > | |
| void | select_parallel_do (Iterator first, Iterator last, const Body &body, void(Body::*)(Item) const, task_group_context &context) |
| For internal use only. More... | |
| template<typename Iterator , typename Body , typename Item , typename _Item > | |
| void | select_parallel_do (Iterator first, Iterator last, const Body &body, void(Body::*)(Item, parallel_do_feeder< _Item > &) const, task_group_context &context) |
| For internal use only. More... | |
| void * | allocate_sibling (task *start_for_task, size_t bytes) |
| allocate right task with new parent More... | |
| void | allocate_sibling (task *start_reduce_task, task *tasks[], size_t start_bytes, size_t finish_bytes) |
| allocate right task with new parent More... | |
| template<typename RandomAccessIterator , typename Compare > | |
| void | parallel_quick_sort (RandomAccessIterator begin, RandomAccessIterator end, const Compare &comp) |
| Wrapper method to initiate the sort by calling parallel_for. More... | |
| static size_t | get_initial_partition_head () |
| typedef unsigned char tbb::interface9::internal::depth_t |
Depth is a relative depth of recursive division inside a range pool. Relative depth allows infinite absolute depth of the recursion for heavily unbalanced workloads with range represented by a number that cannot fit into machine word.
Definition at line 150 of file partitioner.h.
| typedef char tbb::interface9::internal::reduction_context |
Represented as a char, not enum, for compactness.
Definition at line 43 of file parallel_reduce.h.
| anonymous enum |
Values for reduction_context.
| Enumerator | |
|---|---|
| root_task | |
| left_child | |
| right_child | |
Definition at line 38 of file parallel_reduce.h.
allocate right task with new parent
Definition at line 131 of file tbb/parallel_for.h.
References tbb::internal::allocate_child_proxy::allocate(), tbb::task::allocate_child(), tbb::task::allocate_continuation(), tbb::task::set_parent(), and tbb::task::set_ref_count().
Referenced by tbb::interface9::internal::start_for< Range, Body, Partitioner >::offer_work(), tbb::interface9::internal::start_reduce< Range, Body, Partitioner >::offer_work(), and tbb::interface9::internal::start_deterministic_reduce< Range, Body, Partitioner >::offer_work().
|
inline |
allocate right task with new parent
Definition at line 173 of file parallel_reduce.h.
References tbb::internal::allocate_continuation_proxy::allocate(), tbb::internal::allocate_child_proxy::allocate(), tbb::task::allocate_child(), tbb::task::allocate_continuation(), tbb::task::set_parent(), and tbb::task::set_ref_count().
|
static |
Definition at line 337 of file partitioner.h.
References tbb::this_task_arena::current_thread_index(), and tbb::interface7::internal::task_arena_base::not_initialized.