Reference

__gnu_parallel::QSBThreadLocal(3cxx)

NAME

__gnu_parallel::QSBThreadLocal< RandomAccessIterator > -

SYNOPSIS

Public Types

typedef
traits_type::difference_type difference_type"
typedef std::pair
< RandomAccessIterator,
RandomAccessIterator > Piece"
typedef std::iterator_traits
< RandomAccessIterator > traits_type"

Public Member Functions

QSBThreadLocal (int queue_size)

Public Attributes

volatile difference_type * elements_leftover
Piece global
Piece initial
RestrictedBoundedConcurrentQueue
< Piece > leftover_parts"
thread_index_t num_threads

Detailed Description

template<typename RandomAccessIterator>struct __gnu_parallel::QSBThreadLocal< RandomAccessIterator >

Information local to one thread in the parallel quicksort run.

Definition at line 62 of file balanced_quicksort.h.

Member Typedef Documentation

template<typename RandomAccessIterator> typedef std::pair<RandomAccessIterator, RandomAccessIterator> __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::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 RandomAccessIterator> __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::QSBThreadLocal (intqueue_size) [inline]

Constructor. Parameters:

queue_size Size of the work-stealing queue.

Definition at line 88 of file balanced_quicksort.h.

Member Data Documentation

template<typename RandomAccessIterator> volatile difference_type* __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::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 RandomAccessIterator> Piece __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::global

The complete sequence to sort.

Definition at line 84 of file balanced_quicksort.h.

template<typename RandomAccessIterator> Piece __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::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 RandomAccessIterator> RestrictedBoundedConcurrentQueue<Piece> __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::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 RandomAccessIterator> thread_index_t __gnu_parallel::QSBThreadLocal< RandomAccessIterator >::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().

Author

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

History