Scroll to navigation

__gnu_parallel::_Settings(3cxx) __gnu_parallel::_Settings(3cxx)

NAME

__gnu_parallel::_Settings - class _Settings Run-time settings for the parallel mode including all tunable parameters.

SYNOPSIS

#include <settings.h>

Static Public Member Functions


static const _Settings & get () throw ()
Get the global settings. static void set (_Settings &) throw ()
Set the global settings.

Public Attributes


_SequenceIndex accumulate_minimal_n
Minimal input size for accumulate. unsigned int adjacent_difference_minimal_n
Minimal input size for adjacent_difference. _AlgorithmStrategy algorithm_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. _SequenceIndex count_minimal_n
Minimal input size for count and count_if. _SequenceIndex fill_minimal_n
Minimal input size for fill. _FindAlgorithm find_algorithm
double find_increasing_factor
Block size increase factor for find. _SequenceIndex find_initial_block_size
Initial block size for find. _SequenceIndex find_maximum_block_size
Maximal block size for find. float find_scale_factor
Block size scale-down factor with respect to current position. _SequenceIndex find_sequential_search_size
Start with looking for this many elements sequentially, for find. _SequenceIndex for_each_minimal_n
Minimal input size for for_each. _SequenceIndex generate_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). _SequenceIndex max_element_minimal_n
Minimal input size for max_element. _SequenceIndex merge_minimal_n
Minimal input size for merge. unsigned int merge_oversampling
Oversampling factor for merge. _SplittingAlgorithm merge_splitting
_SequenceIndex min_element_minimal_n
Minimal input size for min_element. _MultiwayMergeAlgorithm multiway_merge_algorithm
int multiway_merge_minimal_k
Oversampling factor for multiway_merge. _SequenceIndex multiway_merge_minimal_n
Minimal input size for multiway_merge. unsigned int multiway_merge_oversampling
Oversampling factor for multiway_merge. _SplittingAlgorithm multiway_merge_splitting
_SequenceIndex nth_element_minimal_n
Minimal input size for nth_element. _SequenceIndex partial_sort_minimal_n
Minimal input size for partial_sort. _PartialSumAlgorithm partial_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. _SequenceIndex partition_chunk_size
Chunk size for partition. _SequenceIndex partition_minimal_n
Minimal input size for partition. _SequenceIndex qsb_steals
The number of stolen ranges in load-balanced quicksort. unsigned int random_shuffle_minimal_n
Minimal input size for random_shuffle. _SequenceIndex replace_minimal_n
Minimal input size for replace and replace_if. _SequenceIndex search_minimal_n
Minimal input size for search and search_n. _SequenceIndex set_difference_minimal_n
Minimal input size for set_difference. _SequenceIndex set_intersection_minimal_n
Minimal input size for set_intersection. _SequenceIndex set_symmetric_difference_minimal_n
Minimal input size for set_symmetric_difference. _SequenceIndex set_union_minimal_n
Minimal input size for set_union. _SortAlgorithm sort_algorithm
_SequenceIndex sort_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). _SequenceIndex sort_qsb_base_case_maximal_n
Maximal subsequence __length to switch to unbalanced __base case. Applies to std::sort with dynamically load-balanced quicksort. _SplittingAlgorithm sort_splitting
unsigned int TLB_size
size of the Translation Lookaside Buffer (underestimation). _SequenceIndex transform_minimal_n
Minimal input size for parallel std::transform. _SequenceIndex unique_copy_minimal_n
Minimal input size for unique_copy. _SequenceIndex workstealing_chunk_size

Detailed Description

class _Settings Run-time settings for the parallel mode including all tunable parameters.

Definition at line 122 of file settings.h.

Constructor & Destructor Documentation

__gnu_parallel::_Settings::_Settings () [inline], [explicit]

Definition at line 286 of file settings.h.

Member Function Documentation

static const _Settings & __gnu_parallel::_Settings::get () [static]

Get the global settings.

Referenced by __gnu_parallel::__find_template(), __gnu_parallel::__qsb_local_sort_with_helping(), __gnu_parallel::multiway_merge_sampling_splitting(), and __gnu_parallel::parallel_sort_mwms_pu().

static void __gnu_parallel::_Settings::set (_Settings &) [static]

Set the global settings.

Member Data Documentation

_SequenceIndex __gnu_parallel::_Settings::accumulate_minimal_n

Minimal input size for accumulate.

Definition at line 138 of file settings.h.

unsigned int __gnu_parallel::_Settings::adjacent_difference_minimal_n

Minimal input size for adjacent_difference.

Definition at line 141 of file settings.h.

_AlgorithmStrategy __gnu_parallel::_Settings::algorithm_strategy

Definition at line 124 of file settings.h.

unsigned int __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.

Definition at line 264 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::count_minimal_n

Minimal input size for count and count_if.

Definition at line 144 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::fill_minimal_n

Minimal input size for fill.

Definition at line 147 of file settings.h.

_FindAlgorithm __gnu_parallel::_Settings::find_algorithm

Definition at line 129 of file settings.h.

double __gnu_parallel::_Settings::find_increasing_factor

Block size increase factor for find.

Definition at line 150 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::find_initial_block_size

Initial block size for find.

Definition at line 153 of file settings.h.

Referenced by __gnu_parallel::__find_template().

_SequenceIndex __gnu_parallel::_Settings::find_maximum_block_size

Maximal block size for find.

Definition at line 156 of file settings.h.

float __gnu_parallel::_Settings::find_scale_factor

Block size scale-down factor with respect to current position.

Definition at line 275 of file settings.h.

Referenced by __gnu_parallel::__find_template().

_SequenceIndex __gnu_parallel::_Settings::find_sequential_search_size

Start with looking for this many elements sequentially, for find.

Definition at line 159 of file settings.h.

Referenced by __gnu_parallel::__find_template().

_SequenceIndex __gnu_parallel::_Settings::for_each_minimal_n

Minimal input size for for_each.

Definition at line 162 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::generate_minimal_n

Minimal input size for generate.

Definition at line 165 of file settings.h.

unsigned long long __gnu_parallel::_Settings::L1_cache_size

size of the L1 cache in bytes (underestimation).

Definition at line 253 of file settings.h.

unsigned long long __gnu_parallel::_Settings::L2_cache_size

size of the L2 cache in bytes (underestimation).

Definition at line 256 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::max_element_minimal_n

Minimal input size for max_element.

Definition at line 168 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::merge_minimal_n

Minimal input size for merge.

Definition at line 171 of file settings.h.

unsigned int __gnu_parallel::_Settings::merge_oversampling

Oversampling factor for merge.

Definition at line 174 of file settings.h.

Referenced by __gnu_parallel::multiway_merge_sampling_splitting().

_SplittingAlgorithm __gnu_parallel::_Settings::merge_splitting

Definition at line 132 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::min_element_minimal_n

Minimal input size for min_element.

Definition at line 177 of file settings.h.

_MultiwayMergeAlgorithm __gnu_parallel::_Settings::multiway_merge_algorithm

Definition at line 128 of file settings.h.

int __gnu_parallel::_Settings::multiway_merge_minimal_k

Oversampling factor for multiway_merge.

Definition at line 183 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::multiway_merge_minimal_n

Minimal input size for multiway_merge.

Definition at line 180 of file settings.h.

unsigned int __gnu_parallel::_Settings::multiway_merge_oversampling

Oversampling factor for multiway_merge.

Definition at line 186 of file settings.h.

_SplittingAlgorithm __gnu_parallel::_Settings::multiway_merge_splitting

Definition at line 133 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::nth_element_minimal_n

Minimal input size for nth_element.

Definition at line 189 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::partial_sort_minimal_n

Minimal input size for partial_sort.

Definition at line 202 of file settings.h.

_PartialSumAlgorithm __gnu_parallel::_Settings::partial_sum_algorithm

Definition at line 127 of file settings.h.

float __gnu_parallel::_Settings::partial_sum_dilation

Ratio for partial_sum. Assume 'sum and write result' to be this factor slower than just 'sum'.

Definition at line 206 of file settings.h.

unsigned int __gnu_parallel::_Settings::partial_sum_minimal_n

Minimal input size for partial_sum.

Definition at line 209 of file settings.h.

double __gnu_parallel::_Settings::partition_chunk_share

Chunk size for partition, relative to input size. If > 0.0, this value overrides partition_chunk_size.

Definition at line 196 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::partition_chunk_size

Chunk size for partition.

Definition at line 192 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::partition_minimal_n

Minimal input size for partition.

Definition at line 199 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::qsb_steals

The number of stolen ranges in load-balanced quicksort.

Definition at line 269 of file settings.h.

unsigned int __gnu_parallel::_Settings::random_shuffle_minimal_n

Minimal input size for random_shuffle.

Definition at line 212 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::replace_minimal_n

Minimal input size for replace and replace_if.

Definition at line 215 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::search_minimal_n

Minimal input size for search and search_n.

Definition at line 272 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::set_difference_minimal_n

Minimal input size for set_difference.

Definition at line 218 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::set_intersection_minimal_n

Minimal input size for set_intersection.

Definition at line 221 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::set_symmetric_difference_minimal_n

Minimal input size for set_symmetric_difference.

Definition at line 224 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::set_union_minimal_n

Minimal input size for set_union.

Definition at line 227 of file settings.h.

_SortAlgorithm __gnu_parallel::_Settings::sort_algorithm

Definition at line 126 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::sort_minimal_n

Minimal input size for parallel sorting.

Definition at line 230 of file settings.h.

unsigned int __gnu_parallel::_Settings::sort_mwms_oversampling

Oversampling factor for parallel std::sort (MWMS).

Definition at line 233 of file settings.h.

Referenced by __gnu_parallel::parallel_sort_mwms_pu().

unsigned int __gnu_parallel::_Settings::sort_qs_num_samples_preset

Such many samples to take to find a good pivot (quicksort).

Definition at line 236 of file settings.h.

_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.

Definition at line 240 of file settings.h.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().

_SplittingAlgorithm __gnu_parallel::_Settings::sort_splitting

Definition at line 131 of file settings.h.

unsigned int __gnu_parallel::_Settings::TLB_size

size of the Translation Lookaside Buffer (underestimation).

Definition at line 259 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::transform_minimal_n

Minimal input size for parallel std::transform.

Definition at line 243 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::unique_copy_minimal_n

Minimal input size for unique_copy.

Definition at line 246 of file settings.h.

_SequenceIndex __gnu_parallel::_Settings::workstealing_chunk_size

Definition at line 248 of file settings.h.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Sun Jan 8 2023 libstdc++