tlx
PS5Context< Parameters > Class Template Reference

Parallel Super Scalar String Sample Sort Context. More...

#include <parallel_sample_sort.hpp>

Inheritance diagram for PS5Context< Parameters >:

Public Member Functions

 PS5Context (size_t _thread_num)
 context constructor More...
 
template<typename StringPtr >
void enqueue (PS5SortStep *sstep, const StringPtr &strptr, size_t depth)
 enqueue a new job in the thread pool More...
 
size_t sequential_threshold ()
 return sequential sorting threshold More...
 
void donesize (size_t n)
 decrement number of unordered strings More...
 

Public Attributes

size_t total_size
 total size of input More...
 
std::atomic< size_t > rest_size
 number of remaining strings to sort More...
 
std::atomic< size_t > para_ss_steps
 counters More...
 
std::atomic< size_t > sequ_ss_steps
 
std::atomic< size_t > base_sort_steps
 
MultiTimer mtimer
 timers for individual sorting steps More...
 
size_t num_threads
 number of threads overall More...
 
ThreadPool threads_
 thread pool More...
 

Detailed Description

template<typename Parameters>
class tlx::sort_strings_detail::PS5Context< Parameters >

Parallel Super Scalar String Sample Sort Context.

Definition at line 120 of file parallel_sample_sort.hpp.

Constructor & Destructor Documentation

◆ PS5Context()

PS5Context ( size_t  _thread_num)
inline

context constructor

Definition at line 142 of file parallel_sample_sort.hpp.

Member Function Documentation

◆ donesize()

void donesize ( size_t  n)
inline

decrement number of unordered strings

Definition at line 164 of file parallel_sample_sort.hpp.

◆ enqueue()

void enqueue ( PS5SortStep sstep,
const StringPtr strptr,
size_t  depth 
)

enqueue a new job in the thread pool

Definition at line 1420 of file parallel_sample_sort.hpp.

◆ sequential_threshold()

size_t sequential_threshold ( )
inline

return sequential sorting threshold

Definition at line 153 of file parallel_sample_sort.hpp.

Member Data Documentation

◆ base_sort_steps

std::atomic<size_t> base_sort_steps

Definition at line 130 of file parallel_sample_sort.hpp.

◆ mtimer

MultiTimer mtimer

timers for individual sorting steps

Definition at line 133 of file parallel_sample_sort.hpp.

◆ num_threads

size_t num_threads

number of threads overall

Definition at line 136 of file parallel_sample_sort.hpp.

◆ para_ss_steps

std::atomic<size_t> para_ss_steps

counters

Definition at line 130 of file parallel_sample_sort.hpp.

◆ rest_size

std::atomic<size_t> rest_size

number of remaining strings to sort

Definition at line 127 of file parallel_sample_sort.hpp.

◆ sequ_ss_steps

std::atomic<size_t> sequ_ss_steps

Definition at line 130 of file parallel_sample_sort.hpp.

◆ threads_

ThreadPool threads_

thread pool

Definition at line 139 of file parallel_sample_sort.hpp.

◆ total_size

size_t total_size

total size of input

Definition at line 124 of file parallel_sample_sort.hpp.


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