|
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.