__gnu_parallel::_Settings

Section: C Library Functions (3)
Updated: Wed Apr 17 2019
Page Index
 

NAME

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

 

SYNOPSIS


 

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 123 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::__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::__qsb_local_sort_with_helping(), __gnu_parallel::__sequential_random_shuffle(), __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 139 of file settings.h.  

unsigned int __gnu_parallel::_Settings::adjacent_difference_minimal_n

Minimal input size for adjacent_difference.

Definition at line 142 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 265 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::count_minimal_n

Minimal input size for count and count_if.

Definition at line 145 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::fill_minimal_n

Minimal input size for fill.

Definition at line 148 of file settings.h.  

double __gnu_parallel::_Settings::find_increasing_factor

Block size increase factor for find.

Definition at line 151 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::find_initial_block_size

Initial block size for find.

Definition at line 154 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 157 of file settings.h.  

float __gnu_parallel::_Settings::find_scale_factor

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

Definition at line 276 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 160 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 163 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::generate_minimal_n

Minimal input size for generate.

Definition at line 166 of file settings.h.  

unsigned long long __gnu_parallel::_Settings::L1_cache_size

size of the L1 cache in bytes (underestimation).

Definition at line 254 of file settings.h.  

unsigned long long __gnu_parallel::_Settings::L2_cache_size

size of the L2 cache in bytes (underestimation).

Definition at line 257 of file settings.h.

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.

Definition at line 169 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::merge_minimal_n

Minimal input size for merge.

Definition at line 172 of file settings.h.  

unsigned int __gnu_parallel::_Settings::merge_oversampling

Oversampling factor for merge.

Definition at line 175 of file settings.h.

Referenced by __gnu_parallel::multiway_merge_sampling_splitting().  

_SequenceIndex __gnu_parallel::_Settings::min_element_minimal_n

Minimal input size for min_element.

Definition at line 178 of file settings.h.  

int __gnu_parallel::_Settings::multiway_merge_minimal_k

Oversampling factor for multiway_merge.

Definition at line 184 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::multiway_merge_minimal_n

Minimal input size for multiway_merge.

Definition at line 181 of file settings.h.  

unsigned int __gnu_parallel::_Settings::multiway_merge_oversampling

Oversampling factor for multiway_merge.

Definition at line 187 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::nth_element_minimal_n

Minimal input size for nth_element.

Definition at line 190 of file settings.h.

Referenced by __gnu_parallel::__parallel_nth_element().  

_SequenceIndex __gnu_parallel::_Settings::partial_sort_minimal_n

Minimal input size for partial_sort.

Definition at line 203 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 207 of file settings.h.

Referenced by __gnu_parallel::__parallel_partial_sum_linear().  

unsigned int __gnu_parallel::_Settings::partial_sum_minimal_n

Minimal input size for partial_sum.

Definition at line 210 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 197 of file settings.h.

Referenced by __gnu_parallel::__parallel_partition().  

_SequenceIndex __gnu_parallel::_Settings::partition_chunk_size

Chunk size for partition.

Definition at line 193 of file settings.h.

Referenced by __gnu_parallel::__parallel_partition().  

_SequenceIndex __gnu_parallel::_Settings::partition_minimal_n

Minimal input size for partition.

Definition at line 200 of file settings.h.

Referenced by __gnu_parallel::__parallel_nth_element().  

_SequenceIndex __gnu_parallel::_Settings::qsb_steals

The number of stolen ranges in load-balanced quicksort.

Definition at line 270 of file settings.h.  

unsigned int __gnu_parallel::_Settings::random_shuffle_minimal_n

Minimal input size for random_shuffle.

Definition at line 213 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::replace_minimal_n

Minimal input size for replace and replace_if.

Definition at line 216 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::search_minimal_n

Minimal input size for search and search_n.

Definition at line 273 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::set_difference_minimal_n

Minimal input size for set_difference.

Definition at line 219 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::set_intersection_minimal_n

Minimal input size for set_intersection.

Definition at line 222 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::set_symmetric_difference_minimal_n

Minimal input size for set_symmetric_difference.

Definition at line 225 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::set_union_minimal_n

Minimal input size for set_union.

Definition at line 228 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::sort_minimal_n

Minimal input size for parallel sorting.

Definition at line 231 of file settings.h.  

unsigned int __gnu_parallel::_Settings::sort_mwms_oversampling

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

Definition at line 234 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 237 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 241 of file settings.h.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().  

unsigned int __gnu_parallel::_Settings::TLB_size

size of the Translation Lookaside Buffer (underestimation).

Definition at line 260 of file settings.h.

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.

Definition at line 244 of file settings.h.  

_SequenceIndex __gnu_parallel::_Settings::unique_copy_minimal_n

Minimal input size for unique_copy.

Definition at line 247 of file settings.h.

 

Author

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


 

Index

NAME
SYNOPSIS
Static Public Member Functions
Public Attributes
Detailed Description
Member Function Documentation
static const _Settings& __gnu_parallel::_Settings::get () [static]
static void __gnu_parallel::_Settings::set (_Settings &) [static]
Member Data Documentation
_SequenceIndex __gnu_parallel::_Settings::accumulate_minimal_n
unsigned int __gnu_parallel::_Settings::adjacent_difference_minimal_n
unsigned int __gnu_parallel::_Settings::cache_line_size
_SequenceIndex __gnu_parallel::_Settings::count_minimal_n
_SequenceIndex __gnu_parallel::_Settings::fill_minimal_n
double __gnu_parallel::_Settings::find_increasing_factor
_SequenceIndex __gnu_parallel::_Settings::find_initial_block_size
_SequenceIndex __gnu_parallel::_Settings::find_maximum_block_size
float __gnu_parallel::_Settings::find_scale_factor
_SequenceIndex __gnu_parallel::_Settings::find_sequential_search_size
_SequenceIndex __gnu_parallel::_Settings::for_each_minimal_n
_SequenceIndex __gnu_parallel::_Settings::generate_minimal_n
unsigned long long __gnu_parallel::_Settings::L1_cache_size
unsigned long long __gnu_parallel::_Settings::L2_cache_size
_SequenceIndex __gnu_parallel::_Settings::max_element_minimal_n
_SequenceIndex __gnu_parallel::_Settings::merge_minimal_n
unsigned int __gnu_parallel::_Settings::merge_oversampling
_SequenceIndex __gnu_parallel::_Settings::min_element_minimal_n
int __gnu_parallel::_Settings::multiway_merge_minimal_k
_SequenceIndex __gnu_parallel::_Settings::multiway_merge_minimal_n
unsigned int __gnu_parallel::_Settings::multiway_merge_oversampling
_SequenceIndex __gnu_parallel::_Settings::nth_element_minimal_n
_SequenceIndex __gnu_parallel::_Settings::partial_sort_minimal_n
float __gnu_parallel::_Settings::partial_sum_dilation
unsigned int __gnu_parallel::_Settings::partial_sum_minimal_n
double __gnu_parallel::_Settings::partition_chunk_share
_SequenceIndex __gnu_parallel::_Settings::partition_chunk_size
_SequenceIndex __gnu_parallel::_Settings::partition_minimal_n
_SequenceIndex __gnu_parallel::_Settings::qsb_steals
unsigned int __gnu_parallel::_Settings::random_shuffle_minimal_n
_SequenceIndex __gnu_parallel::_Settings::replace_minimal_n
_SequenceIndex __gnu_parallel::_Settings::search_minimal_n
_SequenceIndex __gnu_parallel::_Settings::set_difference_minimal_n
_SequenceIndex __gnu_parallel::_Settings::set_intersection_minimal_n
_SequenceIndex __gnu_parallel::_Settings::set_symmetric_difference_minimal_n
_SequenceIndex __gnu_parallel::_Settings::set_union_minimal_n
_SequenceIndex __gnu_parallel::_Settings::sort_minimal_n
unsigned int __gnu_parallel::_Settings::sort_mwms_oversampling
unsigned int __gnu_parallel::_Settings::sort_qs_num_samples_preset
_SequenceIndex __gnu_parallel::_Settings::sort_qsb_base_case_maximal_n
unsigned int __gnu_parallel::_Settings::TLB_size
_SequenceIndex __gnu_parallel::_Settings::transform_minimal_n
_SequenceIndex __gnu_parallel::_Settings::unique_copy_minimal_n
Author