.TH "__gnu_parallel::_Settings" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME __gnu_parallel::_Settings \- class _Settings Run-time settings for the parallel mode including all tunable parameters\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Static Public Member Functions" .in +1c .ti -1c .RI "static const \fB_Settings\fP & \fBget\fP () throw ()" .br .RI "Get the global settings\&. " .ti -1c .RI "static void \fBset\fP (\fB_Settings\fP &) throw ()" .br .RI "Set the global settings\&. " .in -1c .SS "Public Attributes" .in +1c .ti -1c .RI "\fB_SequenceIndex\fP \fBaccumulate_minimal_n\fP" .br .RI "Minimal input size for accumulate\&. " .ti -1c .RI "unsigned int \fBadjacent_difference_minimal_n\fP" .br .RI "Minimal input size for adjacent_difference\&. " .ti -1c .RI "\fB_AlgorithmStrategy\fP \fBalgorithm_strategy\fP" .br .ti -1c .RI "unsigned int \fBcache_line_size\fP" .br .RI "Overestimation of cache line size\&. Used to avoid false sharing, i\&.e\&. elements of different threads are at least this amount apart\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBcount_minimal_n\fP" .br .RI "Minimal input size for count and count_if\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBfill_minimal_n\fP" .br .RI "Minimal input size for fill\&. " .ti -1c .RI "\fB_FindAlgorithm\fP \fBfind_algorithm\fP" .br .ti -1c .RI "double \fBfind_increasing_factor\fP" .br .RI "Block size increase factor for find\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBfind_initial_block_size\fP" .br .RI "Initial block size for find\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBfind_maximum_block_size\fP" .br .RI "Maximal block size for find\&. " .ti -1c .RI "float \fBfind_scale_factor\fP" .br .RI "Block size scale-down factor with respect to current position\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBfind_sequential_search_size\fP" .br .RI "Start with looking for this many elements sequentially, for find\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBfor_each_minimal_n\fP" .br .RI "Minimal input size for for_each\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBgenerate_minimal_n\fP" .br .RI "Minimal input size for generate\&. " .ti -1c .RI "unsigned long long \fBL1_cache_size\fP" .br .RI "size of the L1 cache in bytes (underestimation)\&. " .ti -1c .RI "unsigned long long \fBL2_cache_size\fP" .br .RI "size of the L2 cache in bytes (underestimation)\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBmax_element_minimal_n\fP" .br .RI "Minimal input size for max_element\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBmerge_minimal_n\fP" .br .RI "Minimal input size for merge\&. " .ti -1c .RI "unsigned int \fBmerge_oversampling\fP" .br .RI "Oversampling factor for merge\&. " .ti -1c .RI "\fB_SplittingAlgorithm\fP \fBmerge_splitting\fP" .br .ti -1c .RI "\fB_SequenceIndex\fP \fBmin_element_minimal_n\fP" .br .RI "Minimal input size for min_element\&. " .ti -1c .RI "\fB_MultiwayMergeAlgorithm\fP \fBmultiway_merge_algorithm\fP" .br .ti -1c .RI "int \fBmultiway_merge_minimal_k\fP" .br .RI "Oversampling factor for multiway_merge\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBmultiway_merge_minimal_n\fP" .br .RI "Minimal input size for multiway_merge\&. " .ti -1c .RI "unsigned int \fBmultiway_merge_oversampling\fP" .br .RI "Oversampling factor for multiway_merge\&. " .ti -1c .RI "\fB_SplittingAlgorithm\fP \fBmultiway_merge_splitting\fP" .br .ti -1c .RI "\fB_SequenceIndex\fP \fBnth_element_minimal_n\fP" .br .RI "Minimal input size for nth_element\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBpartial_sort_minimal_n\fP" .br .RI "Minimal input size for partial_sort\&. " .ti -1c .RI "\fB_PartialSumAlgorithm\fP \fBpartial_sum_algorithm\fP" .br .ti -1c .RI "float \fBpartial_sum_dilation\fP" .br .RI "Ratio for partial_sum\&. Assume 'sum and write result' to be this factor slower than just 'sum'\&. " .ti -1c .RI "unsigned int \fBpartial_sum_minimal_n\fP" .br .RI "Minimal input size for partial_sum\&. " .ti -1c .RI "double \fBpartition_chunk_share\fP" .br .RI "Chunk size for partition, relative to input size\&. If > 0\&.0, this value overrides partition_chunk_size\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBpartition_chunk_size\fP" .br .RI "Chunk size for partition\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBpartition_minimal_n\fP" .br .RI "Minimal input size for partition\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBqsb_steals\fP" .br .RI "The number of stolen ranges in load-balanced quicksort\&. " .ti -1c .RI "unsigned int \fBrandom_shuffle_minimal_n\fP" .br .RI "Minimal input size for random_shuffle\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBreplace_minimal_n\fP" .br .RI "Minimal input size for replace and replace_if\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBsearch_minimal_n\fP" .br .RI "Minimal input size for search and search_n\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBset_difference_minimal_n\fP" .br .RI "Minimal input size for set_difference\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBset_intersection_minimal_n\fP" .br .RI "Minimal input size for set_intersection\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBset_symmetric_difference_minimal_n\fP" .br .RI "Minimal input size for set_symmetric_difference\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBset_union_minimal_n\fP" .br .RI "Minimal input size for set_union\&. " .ti -1c .RI "\fB_SortAlgorithm\fP \fBsort_algorithm\fP" .br .ti -1c .RI "\fB_SequenceIndex\fP \fBsort_minimal_n\fP" .br .RI "Minimal input size for parallel sorting\&. " .ti -1c .RI "unsigned int \fBsort_mwms_oversampling\fP" .br .RI "Oversampling factor for parallel std::sort (MWMS)\&. " .ti -1c .RI "unsigned int \fBsort_qs_num_samples_preset\fP" .br .RI "Such many samples to take to find a good pivot (quicksort)\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBsort_qsb_base_case_maximal_n\fP" .br .RI "Maximal subsequence __length to switch to unbalanced __base case\&. Applies to std::sort with dynamically load-balanced quicksort\&. " .ti -1c .RI "\fB_SplittingAlgorithm\fP \fBsort_splitting\fP" .br .ti -1c .RI "unsigned int \fBTLB_size\fP" .br .RI "size of the Translation Lookaside Buffer (underestimation)\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBtransform_minimal_n\fP" .br .RI "Minimal input size for parallel std::transform\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBunique_copy_minimal_n\fP" .br .RI "Minimal input size for unique_copy\&. " .ti -1c .RI "\fB_SequenceIndex\fP \fBworkstealing_chunk_size\fP" .br .in -1c .SH "Detailed Description" .PP class _Settings Run-time settings for the parallel mode including all tunable parameters\&. .PP Definition at line \fB123\fP of file \fBsettings\&.h\fP\&. .SH "Constructor & Destructor Documentation" .PP .SS "__gnu_parallel::_Settings::_Settings ()\fC [inline]\fP, \fC [explicit]\fP" .PP Definition at line \fB287\fP of file \fBsettings\&.h\fP\&. .SH "Member Function Documentation" .PP .SS "static const \fB_Settings\fP & __gnu_parallel::_Settings::get ()\fC [static]\fP" .PP Get the global settings\&. .PP Referenced by \fB__gnu_parallel::__find_template()\fP, \fB__gnu_parallel::__find_template()\fP, \fB__gnu_parallel::__find_template()\fP, \fB__gnu_parallel::__for_each_template_random_access_workstealing()\fP, \fB__gnu_parallel::__parallel_nth_element()\fP, \fB__gnu_parallel::__parallel_partial_sum()\fP, \fB__gnu_parallel::__parallel_partial_sum_linear()\fP, \fB__gnu_parallel::__parallel_partition()\fP, \fB__gnu_parallel::__parallel_random_shuffle_drs()\fP, \fB__gnu_parallel::__parallel_sort()\fP, \fB__gnu_parallel::__parallel_sort()\fP, \fB__gnu_parallel::__parallel_sort_qs_conquer()\fP, \fB__gnu_parallel::__qsb_local_sort_with_helping()\fP, \fB__gnu_parallel::__sequential_random_shuffle()\fP, \fB__gnu_parallel::multiway_merge_sampling_splitting()\fP, \fB__gnu_parallel::parallel_multiway_merge()\fP, \fB__gnu_parallel::parallel_sort_mwms()\fP, and \fB__gnu_parallel::parallel_sort_mwms_pu()\fP\&. .SS "static void __gnu_parallel::_Settings::set (\fB_Settings\fP &)\fC [static]\fP" .PP Set the global settings\&. .SH "Member Data Documentation" .PP .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::accumulate_minimal_n" .PP Minimal input size for accumulate\&. .PP Definition at line \fB139\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::adjacent_difference_minimal_n" .PP Minimal input size for adjacent_difference\&. .PP Definition at line \fB142\fP of file \fBsettings\&.h\fP\&. .SS "\fB_AlgorithmStrategy\fP __gnu_parallel::_Settings::algorithm_strategy" .PP Definition at line \fB125\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::cache_line_size" .PP Overestimation of cache line size\&. Used to avoid false sharing, i\&.e\&. elements of different threads are at least this amount apart\&. .PP Definition at line \fB265\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__for_each_template_random_access_workstealing()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::count_minimal_n" .PP Minimal input size for count and count_if\&. .PP Definition at line \fB145\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::fill_minimal_n" .PP Minimal input size for fill\&. .PP Definition at line \fB148\fP of file \fBsettings\&.h\fP\&. .SS "\fB_FindAlgorithm\fP __gnu_parallel::_Settings::find_algorithm" .PP Definition at line \fB130\fP of file \fBsettings\&.h\fP\&. .SS "double __gnu_parallel::_Settings::find_increasing_factor" .PP Block size increase factor for find\&. .PP Definition at line \fB151\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::find_initial_block_size" .PP Initial block size for find\&. .PP Definition at line \fB154\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__find_template()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::find_maximum_block_size" .PP Maximal block size for find\&. .PP Definition at line \fB157\fP of file \fBsettings\&.h\fP\&. .SS "float __gnu_parallel::_Settings::find_scale_factor" .PP Block size scale-down factor with respect to current position\&. .PP Definition at line \fB276\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__find_template()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::find_sequential_search_size" .PP Start with looking for this many elements sequentially, for find\&. .PP Definition at line \fB160\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__find_template()\fP, and \fB__gnu_parallel::__find_template()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::for_each_minimal_n" .PP Minimal input size for for_each\&. .PP Definition at line \fB163\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::generate_minimal_n" .PP Minimal input size for generate\&. .PP Definition at line \fB166\fP of file \fBsettings\&.h\fP\&. .SS "unsigned long long __gnu_parallel::_Settings::L1_cache_size" .PP size of the L1 cache in bytes (underestimation)\&. .PP Definition at line \fB254\fP of file \fBsettings\&.h\fP\&. .SS "unsigned long long __gnu_parallel::_Settings::L2_cache_size" .PP size of the L2 cache in bytes (underestimation)\&. .PP Definition at line \fB257\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_random_shuffle_drs()\fP, and \fB__gnu_parallel::__sequential_random_shuffle()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::max_element_minimal_n" .PP Minimal input size for max_element\&. .PP Definition at line \fB169\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::merge_minimal_n" .PP Minimal input size for merge\&. .PP Definition at line \fB172\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::merge_oversampling" .PP Oversampling factor for merge\&. .PP Definition at line \fB175\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::multiway_merge_sampling_splitting()\fP, and \fB__gnu_parallel::parallel_multiway_merge()\fP\&. .SS "\fB_SplittingAlgorithm\fP __gnu_parallel::_Settings::merge_splitting" .PP Definition at line \fB133\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::min_element_minimal_n" .PP Minimal input size for min_element\&. .PP Definition at line \fB178\fP of file \fBsettings\&.h\fP\&. .SS "\fB_MultiwayMergeAlgorithm\fP __gnu_parallel::_Settings::multiway_merge_algorithm" .PP Definition at line \fB129\fP of file \fBsettings\&.h\fP\&. .SS "int __gnu_parallel::_Settings::multiway_merge_minimal_k" .PP Oversampling factor for multiway_merge\&. .PP Definition at line \fB184\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::multiway_merge_minimal_n" .PP Minimal input size for multiway_merge\&. .PP Definition at line \fB181\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::multiway_merge_oversampling" .PP Oversampling factor for multiway_merge\&. .PP Definition at line \fB187\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SplittingAlgorithm\fP __gnu_parallel::_Settings::multiway_merge_splitting" .PP Definition at line \fB134\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::nth_element_minimal_n" .PP Minimal input size for nth_element\&. .PP Definition at line \fB190\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_nth_element()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::partial_sort_minimal_n" .PP Minimal input size for partial_sort\&. .PP Definition at line \fB203\fP of file \fBsettings\&.h\fP\&. .SS "\fB_PartialSumAlgorithm\fP __gnu_parallel::_Settings::partial_sum_algorithm" .PP Definition at line \fB128\fP of file \fBsettings\&.h\fP\&. .SS "float __gnu_parallel::_Settings::partial_sum_dilation" .PP Ratio for partial_sum\&. Assume 'sum and write result' to be this factor slower than just 'sum'\&. .PP Definition at line \fB207\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_partial_sum_linear()\fP\&. .SS "unsigned int __gnu_parallel::_Settings::partial_sum_minimal_n" .PP Minimal input size for partial_sum\&. .PP Definition at line \fB210\fP of file \fBsettings\&.h\fP\&. .SS "double __gnu_parallel::_Settings::partition_chunk_share" .PP Chunk size for partition, relative to input size\&. If > 0\&.0, this value overrides partition_chunk_size\&. .PP Definition at line \fB197\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_partition()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::partition_chunk_size" .PP Chunk size for partition\&. .PP Definition at line \fB193\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_partition()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::partition_minimal_n" .PP Minimal input size for partition\&. .PP Definition at line \fB200\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_nth_element()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::qsb_steals" .PP The number of stolen ranges in load-balanced quicksort\&. .PP Definition at line \fB270\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::random_shuffle_minimal_n" .PP Minimal input size for random_shuffle\&. .PP Definition at line \fB213\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::replace_minimal_n" .PP Minimal input size for replace and replace_if\&. .PP Definition at line \fB216\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::search_minimal_n" .PP Minimal input size for search and search_n\&. .PP Definition at line \fB273\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::set_difference_minimal_n" .PP Minimal input size for set_difference\&. .PP Definition at line \fB219\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::set_intersection_minimal_n" .PP Minimal input size for set_intersection\&. .PP Definition at line \fB222\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::set_symmetric_difference_minimal_n" .PP Minimal input size for set_symmetric_difference\&. .PP Definition at line \fB225\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::set_union_minimal_n" .PP Minimal input size for set_union\&. .PP Definition at line \fB228\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SortAlgorithm\fP __gnu_parallel::_Settings::sort_algorithm" .PP Definition at line \fB127\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::sort_minimal_n" .PP Minimal input size for parallel sorting\&. .PP Definition at line \fB231\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::sort_mwms_oversampling" .PP Oversampling factor for parallel std::sort (MWMS)\&. .PP Definition at line \fB234\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::parallel_sort_mwms()\fP, and \fB__gnu_parallel::parallel_sort_mwms_pu()\fP\&. .SS "unsigned int __gnu_parallel::_Settings::sort_qs_num_samples_preset" .PP Such many samples to take to find a good pivot (quicksort)\&. .PP Definition at line \fB237\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::sort_qsb_base_case_maximal_n" .PP Maximal subsequence __length to switch to unbalanced __base case\&. Applies to std::sort with dynamically load-balanced quicksort\&. .PP Definition at line \fB241\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__qsb_local_sort_with_helping()\fP\&. .SS "\fB_SplittingAlgorithm\fP __gnu_parallel::_Settings::sort_splitting" .PP Definition at line \fB132\fP of file \fBsettings\&.h\fP\&. .SS "unsigned int __gnu_parallel::_Settings::TLB_size" .PP size of the Translation Lookaside Buffer (underestimation)\&. .PP Definition at line \fB260\fP of file \fBsettings\&.h\fP\&. .PP Referenced by \fB__gnu_parallel::__parallel_random_shuffle_drs()\fP, and \fB__gnu_parallel::__sequential_random_shuffle()\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::transform_minimal_n" .PP Minimal input size for parallel std::transform\&. .PP Definition at line \fB244\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::unique_copy_minimal_n" .PP Minimal input size for unique_copy\&. .PP Definition at line \fB247\fP of file \fBsettings\&.h\fP\&. .SS "\fB_SequenceIndex\fP __gnu_parallel::_Settings::workstealing_chunk_size" .PP Definition at line \fB249\fP of file \fBsettings\&.h\fP\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.