tlx
tlx::parallel_mergesort_detail Namespace Reference

Classes

struct  PMWMSPiece
 Subsequence description. More...
 
struct  PMWMSSortingData
 Data accessed by all threads. More...
 

Functions

template<typename RandomAccessIterator , typename DiffType >
void determine_samples (PMWMSSortingData< RandomAccessIterator > *sd, DiffType &num_samples, size_t iam, size_t num_threads)
 Select samples from a sequence. More...
 
template<bool Stable, typename RandomAccessIterator , typename Comparator >
void parallel_sort_mwms_pu (PMWMSSortingData< RandomAccessIterator > *sd, size_t iam, size_t num_threads, Comparator &comp, MultiwayMergeSplittingAlgorithm mwmsa)
 PMWMS code executed by each thread. More...
 

Function Documentation

void tlx::parallel_mergesort_detail::determine_samples ( PMWMSSortingData< RandomAccessIterator > *  sd,
DiffType &  num_samples,
size_t  iam,
size_t  num_threads 
)

Select samples from a sequence.

Parameters
sdPointer to sorting data struct. Result will be placed in sd->samples.
num_samplesNumber of samples to select.
iammy thread number
num_threadsnumber of threads in group

Definition at line 92 of file parallel_mergesort.hpp.

void tlx::parallel_mergesort_detail::parallel_sort_mwms_pu ( PMWMSSortingData< RandomAccessIterator > *  sd,
size_t  iam,
size_t  num_threads,
Comparator &  comp,
MultiwayMergeSplittingAlgorithm  mwmsa 
)

PMWMS code executed by each thread.

Parameters
sdPointer to sorting data struct.
iammy thread number
num_threadsnumber of threads in group
compComparator.
mwmsaMultiwayMergeSplittingAlgorithm to use.

Definition at line 117 of file parallel_mergesort.hpp.