__gnu_parallel::_Settings.3cxx
Contents
Detailed Description
class _Settings Run-time settings for the parallel mode including all tunable parameters.
Member Data Documentation
_SequenceIndex__gnu_parallel::_Settings::accumulate_minimal_n
Minimal input size for accumulate.
unsignedint__gnu_parallel::_Settings::adjacent_difference_minimal_n
Minimal input size for adjacent_difference.
unsignedint__gnu_parallel::_Settings::cache_line_size
Overestimation of cache line size. Used to avoid false sharing, i.e. elements of different threads are at
least this amount apart.
Referenced by __gnu_parallel::__for_each_template_random_access_workstealing().
_SequenceIndex__gnu_parallel::_Settings::count_minimal_n
Minimal input size for count and count_if.
_SequenceIndex__gnu_parallel::_Settings::fill_minimal_n
Minimal input size for fill.
double__gnu_parallel::_Settings::find_increasing_factor
Block size increase factor for find.
_SequenceIndex__gnu_parallel::_Settings::find_initial_block_size
Initial block size for find.
Referenced by __gnu_parallel::__find_template().
_SequenceIndex__gnu_parallel::_Settings::find_maximum_block_size
Maximal block size for find.
float__gnu_parallel::_Settings::find_scale_factor
Block size scale-down factor with respect to current position.
Referenced by __gnu_parallel::__find_template().
_SequenceIndex__gnu_parallel::_Settings::find_sequential_search_size
Start with looking for this many elements sequentially, for find.
Referenced by __gnu_parallel::__find_template(), and __gnu_parallel::__find_template().
_SequenceIndex__gnu_parallel::_Settings::for_each_minimal_n
Minimal input size for for_each.
_SequenceIndex__gnu_parallel::_Settings::generate_minimal_n
Minimal input size for generate.
unsignedlonglong__gnu_parallel::_Settings::L1_cache_size
size of the L1 cache in bytes (underestimation).
unsignedlonglong__gnu_parallel::_Settings::L2_cache_size
size of the L2 cache in bytes (underestimation).
Referenced by __gnu_parallel::__parallel_random_shuffle_drs(), and
__gnu_parallel::__sequential_random_shuffle().
_SequenceIndex__gnu_parallel::_Settings::max_element_minimal_n
Minimal input size for max_element.
_SequenceIndex__gnu_parallel::_Settings::merge_minimal_n
Minimal input size for merge.
unsignedint__gnu_parallel::_Settings::merge_oversampling
Oversampling factor for merge.
Referenced by __gnu_parallel::multiway_merge_sampling_splitting(), and
__gnu_parallel::parallel_multiway_merge().
_SequenceIndex__gnu_parallel::_Settings::min_element_minimal_n
Minimal input size for min_element.
int__gnu_parallel::_Settings::multiway_merge_minimal_k
Oversampling factor for multiway_merge.
_SequenceIndex__gnu_parallel::_Settings::multiway_merge_minimal_n
Minimal input size for multiway_merge.
unsignedint__gnu_parallel::_Settings::multiway_merge_oversampling
Oversampling factor for multiway_merge.
_SequenceIndex__gnu_parallel::_Settings::nth_element_minimal_n
Minimal input size for nth_element.
Referenced by __gnu_parallel::__parallel_nth_element().
_SequenceIndex__gnu_parallel::_Settings::partial_sort_minimal_n
Minimal input size for partial_sort.
float__gnu_parallel::_Settings::partial_sum_dilation
Ratio for partial_sum. Assume 'sum and write result' to be this factor slower than just 'sum'.
Referenced by __gnu_parallel::__parallel_partial_sum_linear().
unsignedint__gnu_parallel::_Settings::partial_sum_minimal_n
Minimal input size for partial_sum.
double__gnu_parallel::_Settings::partition_chunk_share
Chunk size for partition, relative to input size. If > 0.0, this value overrides partition_chunk_size.
Referenced by __gnu_parallel::__parallel_partition().
_SequenceIndex__gnu_parallel::_Settings::partition_chunk_size
Chunk size for partition.
Referenced by __gnu_parallel::__parallel_partition().
_SequenceIndex__gnu_parallel::_Settings::partition_minimal_n
Minimal input size for partition.
Referenced by __gnu_parallel::__parallel_nth_element().
_SequenceIndex__gnu_parallel::_Settings::qsb_steals
The number of stolen ranges in load-balanced quicksort.
unsignedint__gnu_parallel::_Settings::random_shuffle_minimal_n
Minimal input size for random_shuffle.
_SequenceIndex__gnu_parallel::_Settings::replace_minimal_n
Minimal input size for replace and replace_if.
_SequenceIndex__gnu_parallel::_Settings::search_minimal_n
Minimal input size for search and search_n.
_SequenceIndex__gnu_parallel::_Settings::set_difference_minimal_n
Minimal input size for set_difference.
_SequenceIndex__gnu_parallel::_Settings::set_intersection_minimal_n
Minimal input size for set_intersection.
_SequenceIndex__gnu_parallel::_Settings::set_symmetric_difference_minimal_n
Minimal input size for set_symmetric_difference.
_SequenceIndex__gnu_parallel::_Settings::set_union_minimal_n
Minimal input size for set_union.
_SequenceIndex__gnu_parallel::_Settings::sort_minimal_n
Minimal input size for parallel sorting.
unsignedint__gnu_parallel::_Settings::sort_mwms_oversampling
Oversampling factor for parallel std::sort (MWMS).
Referenced by __gnu_parallel::parallel_sort_mwms(), and __gnu_parallel::parallel_sort_mwms_pu().
unsignedint__gnu_parallel::_Settings::sort_qs_num_samples_preset
Such many samples to take to find a good pivot (quicksort).
_SequenceIndex__gnu_parallel::_Settings::sort_qsb_base_case_maximal_n
Maximal subsequence __length to switch to unbalanced __base case. Applies to std::sort with dynamically
load-balanced quicksort.
Referenced by __gnu_parallel::__qsb_local_sort_with_helping().
unsignedint__gnu_parallel::_Settings::TLB_size
size of the Translation Lookaside Buffer (underestimation).
Referenced by __gnu_parallel::__parallel_random_shuffle_drs(), and
__gnu_parallel::__sequential_random_shuffle().
_SequenceIndex__gnu_parallel::_Settings::transform_minimal_n
Minimal input size for parallel std::transform.
_SequenceIndex__gnu_parallel::_Settings::unique_copy_minimal_n
Minimal input size for unique_copy.
Member Function Documentation
staticconst_Settings&__gnu_parallel::_Settings::get()[static]
Get the global settings.
Referenced by __gnu_parallel::__find_template(), __gnu_parallel::__find_template(),
__gnu_parallel::__find_template(), __gnu_parallel::__for_each_template_random_access_workstealing(),
__gnu_parallel::__parallel_nth_element(), __gnu_parallel::__parallel_partial_sum(),
__gnu_parallel::__parallel_partial_sum_linear(), __gnu_parallel::__parallel_partition(),
__gnu_parallel::__parallel_random_shuffle_drs(), __gnu_parallel::__parallel_sort(),
__gnu_parallel::__parallel_sort(), __gnu_parallel::__parallel_sort_qs_conquer(),
__gnu_parallel::__qsb_local_sort_with_helping(), __gnu_parallel::__sequential_random_shuffle(),
__gnu_parallel::multiway_merge_sampling_splitting(), __gnu_parallel::parallel_multiway_merge(),
__gnu_parallel::parallel_sort_mwms(), and __gnu_parallel::parallel_sort_mwms_pu().
staticvoid__gnu_parallel::_Settings::set(_Settings&)[static]
Set the global settings.
Name
__gnu_parallel::_Settings - class _Settings Run-time settings for the parallel mode including all tunable
parameters.
Synopsis
#include <settings.h>
StaticPublicMemberFunctions
static const _Settings & get () throw ()
Get the global settings.
static void set (_Settings &) throw ()
Set the global settings.
PublicAttributes_SequenceIndexaccumulate_minimal_n
Minimal input size for accumulate.
unsigned int adjacent_difference_minimal_n
Minimal input size for adjacent_difference.
_AlgorithmStrategyalgorithm_strategy
unsigned int cache_line_size
Overestimation of cache line size. Used to avoid false sharing, i.e. elements of different threads
are at least this amount apart.
_SequenceIndexcount_minimal_n
Minimal input size for count and count_if.
_SequenceIndexfill_minimal_n
Minimal input size for fill.
_FindAlgorithmfind_algorithm
double find_increasing_factor
Block size increase factor for find.
_SequenceIndexfind_initial_block_size
Initial block size for find.
_SequenceIndexfind_maximum_block_size
Maximal block size for find.
float find_scale_factor
Block size scale-down factor with respect to current position.
_SequenceIndexfind_sequential_search_size
Start with looking for this many elements sequentially, for find.
_SequenceIndexfor_each_minimal_n
Minimal input size for for_each.
_SequenceIndexgenerate_minimal_n
Minimal input size for generate.
unsigned long long L1_cache_size
size of the L1 cache in bytes (underestimation).
unsigned long long L2_cache_size
size of the L2 cache in bytes (underestimation).
_SequenceIndexmax_element_minimal_n
Minimal input size for max_element.
_SequenceIndexmerge_minimal_n
Minimal input size for merge.
unsigned int merge_oversampling
Oversampling factor for merge.
_SplittingAlgorithmmerge_splitting_SequenceIndexmin_element_minimal_n
Minimal input size for min_element.
_MultiwayMergeAlgorithmmultiway_merge_algorithm
int multiway_merge_minimal_k
Oversampling factor for multiway_merge.
_SequenceIndexmultiway_merge_minimal_n
Minimal input size for multiway_merge.
unsigned int multiway_merge_oversampling
Oversampling factor for multiway_merge.
_SplittingAlgorithmmultiway_merge_splitting_SequenceIndexnth_element_minimal_n
Minimal input size for nth_element.
_SequenceIndexpartial_sort_minimal_n
Minimal input size for partial_sort.
_PartialSumAlgorithmpartial_sum_algorithm
float partial_sum_dilation
Ratio for partial_sum. Assume 'sum and write result' to be this factor slower than just 'sum'.
unsigned int partial_sum_minimal_n
Minimal input size for partial_sum.
double partition_chunk_share
Chunk size for partition, relative to input size. If > 0.0, this value overrides
partition_chunk_size.
_SequenceIndexpartition_chunk_size
Chunk size for partition.
_SequenceIndexpartition_minimal_n
Minimal input size for partition.
_SequenceIndexqsb_steals
The number of stolen ranges in load-balanced quicksort.
unsigned int random_shuffle_minimal_n
Minimal input size for random_shuffle.
_SequenceIndexreplace_minimal_n
Minimal input size for replace and replace_if.
_SequenceIndexsearch_minimal_n
Minimal input size for search and search_n.
_SequenceIndexset_difference_minimal_n
Minimal input size for set_difference.
_SequenceIndexset_intersection_minimal_n
Minimal input size for set_intersection.
_SequenceIndexset_symmetric_difference_minimal_n
Minimal input size for set_symmetric_difference.
_SequenceIndexset_union_minimal_n
Minimal input size for set_union.
_SortAlgorithmsort_algorithm_SequenceIndexsort_minimal_n
Minimal input size for parallel sorting.
unsigned int sort_mwms_oversampling
Oversampling factor for parallel std::sort (MWMS).
unsigned int sort_qs_num_samples_preset
Such many samples to take to find a good pivot (quicksort).
_SequenceIndexsort_qsb_base_case_maximal_n
Maximal subsequence __length to switch to unbalanced __base case. Applies to std::sort with
dynamically load-balanced quicksort.
_SplittingAlgorithmsort_splitting
unsigned int TLB_size
size of the Translation Lookaside Buffer (underestimation).
_SequenceIndextransform_minimal_n
Minimal input size for parallel std::transform.
_SequenceIndexunique_copy_minimal_n
Minimal input size for unique_copy.
_SequenceIndexworkstealing_chunk_size