GraphLab: Distributed Graph-Parallel API
2.1
|
Ingress object assigning edges using randoming hash function. More...
#include <graphlab/graph/ingress/distributed_oblivious_ingress.hpp>
Public Types | |
typedef distributed_graph < VertexData, EdgeData > | graph_type |
typedef VertexData | vertex_data_type |
The type of the vertex data stored in the graph. | |
typedef EdgeData | edge_data_type |
The type of the edge data stored in the graph. | |
typedef graph_type::vertex_record | vertex_record |
typedef graph_type::mirror_type | mirror_type |
typedef distributed_ingress_base < VertexData, EdgeData > | base_type |
typedef fixed_dense_bitset < RPC_MAX_N_PROCS > | bin_counts_type |
typedef cuckoo_map_pow2 < vertex_id_type, bin_counts_type, 3, uint32_t > | degree_hash_table_type |
Public Member Functions | |
distributed_oblivious_ingress (distributed_control &dc, graph_type &graph, bool usehash=false, bool userecent=false) | |
void | add_edge (vertex_id_type source, vertex_id_type target, const EdgeData &edata) |
virtual void | finalize () |
virtual void | add_vertex (vertex_id_type vid, const VertexData &vdata) |
Add an vertex to the ingress object. | |
void | exchange_global_info () |
Public Attributes | |
degree_hash_table_type | dht |
std::vector< size_t > | proc_num_edges |
bool | usehash |
bool | userecent |
dc_dist_object < distributed_ingress_base > | rpc |
The rpc interface for this object. | |
graph_type & | graph |
The underlying distributed graph object that is being loaded. | |
buffered_exchange < vertex_buffer_record > | vertex_exchange |
buffered_exchange < edge_buffer_record > | edge_exchange |
ingress_edge_decision < VertexData, EdgeData > | edge_decision |
Ingress decision object for computing the edge destination. |
Protected Member Functions | |
procid_t | vertex_to_proc (const vertex_id_type vid) const |
Returns the random hashed pid of a vertex. |
Ingress object assigning edges using randoming hash function.
Definition at line 45 of file distributed_oblivious_ingress.hpp.
typedef cuckoo_map_pow2<vertex_id_type, bin_counts_type,3,uint32_t> graphlab::distributed_oblivious_ingress< VertexData, EdgeData >::degree_hash_table_type |
Type of the degree hash table: a map from vertex id to a bitset of length num_procs.
Definition at line 63 of file distributed_oblivious_ingress.hpp.
|
inlinevirtual |
Add an edge to the ingress object using oblivious greedy assignment.
Implements graphlab::idistributed_ingress< VertexData, EdgeData >.
Definition at line 84 of file distributed_oblivious_ingress.hpp.
|
inlinevirtual |
Finalize completes local graph data structure, and vertex record information by coordinating vertex information among the machines.
Implements graphlab::idistributed_ingress< VertexData, EdgeData >.
Definition at line 94 of file distributed_oblivious_ingress.hpp.
std::vector<size_t> graphlab::distributed_oblivious_ingress< VertexData, EdgeData >::proc_num_edges |
Array of number of edges on each proc.
Definition at line 67 of file distributed_oblivious_ingress.hpp.
bool graphlab::distributed_oblivious_ingress< VertexData, EdgeData >::usehash |
Ingress tratis.
Definition at line 70 of file distributed_oblivious_ingress.hpp.