Thrill
0.1
|
Definition at line 103 of file reduce_pre_phase.hpp.
#include <reduce_pre_phase.hpp>
Public Types | |
using | Emitter = ReducePrePhaseEmitter< TableItem, VolatileKey, BlockWriter > |
using | MakeTableItem = ReduceMakeTableItem< Value, TableItem, VolatileKey > |
using | ReduceConfig = ReduceConfig_ |
using | Table = typename ReduceTableSelect< ReduceConfig::table_impl_, TableItem, Key, Value, KeyExtractor, ReduceFunction, Emitter, VolatileKey, ReduceConfig, IndexFunction, KeyEqualFunction >::type |
Public Member Functions | |
ReducePrePhase (Context &ctx, size_t dia_id, size_t num_partitions, KeyExtractor key_extractor, ReduceFunction reduce_function, std::vector< BlockWriter > &emit, const ReduceConfig &config=ReduceConfig(), const IndexFunction &index_function=IndexFunction(), const KeyEqualFunction &key_equal_function=KeyEqualFunction(), const HashFunction hash_function=HashFunction(), bool duplicates=false) | |
A data structure which takes an arbitrary value and extracts a key using a key extractor function from that value. More... | |
ReducePrePhase (const ReducePrePhase &)=delete | |
non-copyable: delete copy-constructor More... | |
void | CloseAll () |
Closes all emitter. More... | |
void | FlushAll () |
Flush all partitions. More... | |
void | FlushPartition (size_t partition_id, bool consume, bool grow) |
Flushes a partition. More... | |
void | Initialize (size_t limit_memory_bytes) |
void | InitializeSkip () |
bool | Insert (const Value &v) |
void | InsertSkip (const Value &v) |
ReducePrePhase & | operator= (const ReducePrePhase &)=delete |
non-copyable: delete assignment operator More... | |
Accessors | |
size_t | num_items () const |
Returns the total num of items in the table. More... | |
common::Range | key_range (size_t partition_id) |
calculate key range for the given output partition More... | |
Protected Attributes | |
Emitter | emit_ |
Emitters used to parameterize hash table for output to network. More... | |
KeyExtractor | key_extractor_ |
extractor function which maps a value to it's key More... | |
Table | table_ |
the first-level hash table implementation More... | |
Static Private Attributes | |
static constexpr bool | debug = false |
using Emitter = ReducePrePhaseEmitter<TableItem, VolatileKey, BlockWriter> |
Definition at line 116 of file reduce_pre_phase.hpp.
using MakeTableItem = ReduceMakeTableItem<Value, TableItem, VolatileKey> |
Definition at line 117 of file reduce_pre_phase.hpp.
using ReduceConfig = ReduceConfig_ |
Definition at line 115 of file reduce_pre_phase.hpp.
using Table = typename ReduceTableSelect< ReduceConfig::table_impl_, TableItem, Key, Value, KeyExtractor, ReduceFunction, Emitter, VolatileKey, ReduceConfig, IndexFunction, KeyEqualFunction>::type |
Definition at line 123 of file reduce_pre_phase.hpp.
|
inline |
A data structure which takes an arbitrary value and extracts a key using a key extractor function from that value.
Afterwards, the value is hashed based on the key into some slot.
Definition at line 130 of file reduce_pre_phase.hpp.
References sLOG, and tlx::unused().
|
delete |
non-copyable: delete copy-constructor
|
inline |
Closes all emitter.
Definition at line 192 of file reduce_pre_phase.hpp.
|
inline |
Flush all partitions.
Definition at line 179 of file reduce_pre_phase.hpp.
|
inline |
Flushes a partition.
Definition at line 186 of file reduce_pre_phase.hpp.
|
inline |
Definition at line 159 of file reduce_pre_phase.hpp.
|
inline |
Definition at line 163 of file reduce_pre_phase.hpp.
|
inline |
Definition at line 167 of file reduce_pre_phase.hpp.
|
inline |
Definition at line 172 of file reduce_pre_phase.hpp.
|
inline |
calculate key range for the given output partition
Definition at line 204 of file reduce_pre_phase.hpp.
|
inline |
Returns the total num of items in the table.
Definition at line 201 of file reduce_pre_phase.hpp.
|
delete |
non-copyable: delete assignment operator
|
staticprivate |
Definition at line 112 of file reduce_pre_phase.hpp.
|
protected |
Emitters used to parameterize hash table for output to network.
Definition at line 211 of file reduce_pre_phase.hpp.
|
protected |
extractor function which maps a value to it's key
Definition at line 214 of file reduce_pre_phase.hpp.
|
protected |
the first-level hash table implementation
Definition at line 217 of file reduce_pre_phase.hpp.