libstdc++
__gnu_parallel::_QSBThreadLocal< _RAIter > Struct Template Reference

Public Types

typedef
_TraitsType::difference_type 
_DifferenceType
 
typedef std::pair< _RAIter,
_RAIter > 
_Piece
 
typedef std::iterator_traits
< _RAIter > 
_TraitsType
 

Public Member Functions

 _QSBThreadLocal (int __queue_size)
 

Public Attributes

volatile _DifferenceType * _M_elements_leftover
 
_Piece _M_global
 
_Piece _M_initial
 
_RestrictedBoundedConcurrentQueue
< _Piece
_M_leftover_parts
 
_ThreadIndex _M_num_threads
 

Detailed Description

template<typename _RAIter>
struct __gnu_parallel::_QSBThreadLocal< _RAIter >

Information local to one thread in the parallel quicksort run.

Definition at line 62 of file balanced_quicksort.h.

Member Typedef Documentation

template<typename _RAIter>
typedef std::pair<_RAIter, _RAIter> __gnu_parallel::_QSBThreadLocal< _RAIter >::_Piece

Continuous part of the sequence, described by an iterator pair.

Definition at line 69 of file balanced_quicksort.h.

Constructor & Destructor Documentation

template<typename _RAIter>
__gnu_parallel::_QSBThreadLocal< _RAIter >::_QSBThreadLocal ( int  __queue_size)
inline

Constructor.

Parameters
__queue_sizesize of the work-stealing queue.

Definition at line 88 of file balanced_quicksort.h.

Member Data Documentation

template<typename _RAIter>
volatile _DifferenceType* __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_elements_leftover

Pointer to a counter of elements left over to sort.

Definition at line 81 of file balanced_quicksort.h.

Referenced by __gnu_parallel::__parallel_sort_qsb(), __gnu_parallel::__qsb_conquer(), and __gnu_parallel::__qsb_local_sort_with_helping().

template<typename _RAIter>
_Piece __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_global

The complete sequence to sort.

Definition at line 84 of file balanced_quicksort.h.

template<typename _RAIter>
_Piece __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_initial

Initial piece to work on.

Definition at line 72 of file balanced_quicksort.h.

Referenced by __gnu_parallel::__qsb_conquer(), and __gnu_parallel::__qsb_local_sort_with_helping().

template<typename _RAIter>
_RestrictedBoundedConcurrentQueue<_Piece> __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_leftover_parts

Work-stealing queue.

Definition at line 75 of file balanced_quicksort.h.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().

template<typename _RAIter>
_ThreadIndex __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_num_threads

Number of threads involved in this algorithm.

Definition at line 78 of file balanced_quicksort.h.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().


The documentation for this struct was generated from the following file: