|
tlx
|
PS5BigSortStep Out-of-Place Parallel Sample Sort with Separate Jobs. More...
#include <parallel_sample_sort.hpp>
Public Types | |
| typedef StringPtr::StringSet | StringSet |
| typedef StringSet::Iterator | StrIterator |
| typedef Context::key_type | key_type |
Public Member Functions | |
| PS5BigSortStep (Context &ctx, PS5SortStep *pstep, const StringPtr &strptr, size_t depth) | |
| virtual | ~PS5BigSortStep () |
| void | sample () |
| void | count (unsigned int p) |
| void | count_finished () |
| void | distribute (unsigned int p) |
| void | distribute_finished () |
| void | substep_all_done () final |
| Pure virtual function called by substep when all substeps are done. | |
| Public Member Functions inherited from PS5SortStep | |
| void | substep_notify_done () |
| Notify superstep that the currently substep is done. | |
Public Attributes | |
| Context & | ctx_ |
| context | |
| PS5SortStep * | pstep_ |
| parent sort step for notification | |
| StringPtr | strptr_ |
| string pointers, size, and current sorting depth | |
| size_t | depth_ |
| size_t | parts_ |
| number of parts into which the strings were split | |
| size_t | psize_ |
| size of all parts except the last | |
| std::atomic< size_t > | pwork_ |
| number of threads still working | |
| Context::Classify | classifier_ |
| classifier instance and variables (contains splitter tree | |
| unsigned char | splitter_lcp_ [num_splitters_+1] |
| LCPs of splitters, needed for recursive calls. | |
| simple_vector< simple_vector< size_t > > | bkt_ |
| individual bucket array of threads, keep bkt[0] for DistributeJob | |
| simple_vector< simple_vector< std::uint16_t > > | bktcache_ |
| bucket ids cache, created by classifier and later counted | |
Static Public Attributes | |
| static const size_t | treebits_ |
| static const size_t | num_splitters_ |
| static const size_t | bktnum_ |
Additional Inherited Members | |
| Protected Member Functions inherited from PS5SortStep | |
| PS5SortStep () | |
| virtual | ~PS5SortStep () |
| void | substep_add () |
| Register new substep. | |
PS5BigSortStep Out-of-Place Parallel Sample Sort with Separate Jobs.
Definition at line 1097 of file parallel_sample_sort.hpp.
Definition at line 1102 of file parallel_sample_sort.hpp.
| typedef StringPtr::StringSet StringSet |
Definition at line 1100 of file parallel_sample_sort.hpp.
| typedef StringSet::Iterator StrIterator |
Definition at line 1101 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1138 of file parallel_sample_sort.hpp.
|
inlinevirtual |
Definition at line 1161 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1197 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1222 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1249 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1278 of file parallel_sample_sort.hpp.
|
inline |
Definition at line 1166 of file parallel_sample_sort.hpp.
|
inlinefinalvirtual |
Pure virtual function called by substep when all substeps are done.
Implements PS5SortStep.
Definition at line 1374 of file parallel_sample_sort.hpp.
| simple_vector<simple_vector<size_t> > bkt_ |
individual bucket array of threads, keep bkt[0] for DistributeJob
Definition at line 1131 of file parallel_sample_sort.hpp.
| simple_vector<simple_vector<std::uint16_t> > bktcache_ |
bucket ids cache, created by classifier and later counted
Definition at line 1133 of file parallel_sample_sort.hpp.
|
static |
Definition at line 1125 of file parallel_sample_sort.hpp.
| Context::Classify classifier_ |
classifier instance and variables (contains splitter tree
Definition at line 1121 of file parallel_sample_sort.hpp.
| Context& ctx_ |
context
Definition at line 1105 of file parallel_sample_sort.hpp.
| size_t depth_ |
Definition at line 1111 of file parallel_sample_sort.hpp.
|
static |
Definition at line 1124 of file parallel_sample_sort.hpp.
| size_t parts_ |
number of parts into which the strings were split
Definition at line 1114 of file parallel_sample_sort.hpp.
| size_t psize_ |
size of all parts except the last
Definition at line 1116 of file parallel_sample_sort.hpp.
| PS5SortStep* pstep_ |
parent sort step for notification
Definition at line 1107 of file parallel_sample_sort.hpp.
| std::atomic<size_t> pwork_ |
number of threads still working
Definition at line 1118 of file parallel_sample_sort.hpp.
| unsigned char splitter_lcp_[num_splitters_+1] |
LCPs of splitters, needed for recursive calls.
Definition at line 1128 of file parallel_sample_sort.hpp.
string pointers, size, and current sorting depth
Definition at line 1110 of file parallel_sample_sort.hpp.
|
static |
Definition at line 1123 of file parallel_sample_sort.hpp.