GraphChi  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Macros
Public Member Functions
ConnectedComponentsProgram Struct Reference
Inheritance diagram for ConnectedComponentsProgram:
graphchi::GraphChiProgram< VertexDataType, EdgeDataType >

List of all members.

Public Member Functions

void update (graphchi_vertex< VertexDataType, EdgeDataType > &vertex, graphchi_context &gcontext)
void before_iteration (int iteration, graphchi_context &info)
void after_iteration (int iteration, graphchi_context &ginfo)
void before_exec_interval (vid_t window_st, vid_t window_en, graphchi_context &ginfo)
void after_exec_interval (vid_t window_st, vid_t window_en, graphchi_context &ginfo)

Additional Inherited Members

- Public Types inherited from graphchi::GraphChiProgram< VertexDataType, EdgeDataType >
typedef VertexDataType VertexDataType
typedef EdgeDataType EdgeDataType

Detailed Description

GraphChi programs need to subclass GraphChiProgram<vertex-type, edge-type> class. The main logic is usually in the update function.


Member Function Documentation

void ConnectedComponentsProgram::after_exec_interval ( vid_t  window_st,
vid_t  window_en,
graphchi_context ginfo 
)
inlinevirtual

Called after an execution interval has finished.

Reimplemented from graphchi::GraphChiProgram< VertexDataType, EdgeDataType >.

void ConnectedComponentsProgram::after_iteration ( int  iteration,
graphchi_context ginfo 
)
inlinevirtual

Called after an iteration has finished.

Reimplemented from graphchi::GraphChiProgram< VertexDataType, EdgeDataType >.

void ConnectedComponentsProgram::before_exec_interval ( vid_t  window_st,
vid_t  window_en,
graphchi_context ginfo 
)
inlinevirtual

Called before an execution interval is started.

Reimplemented from graphchi::GraphChiProgram< VertexDataType, EdgeDataType >.

void ConnectedComponentsProgram::before_iteration ( int  iteration,
graphchi_context info 
)
inlinevirtual

Called before an iteration starts.

Reimplemented from graphchi::GraphChiProgram< VertexDataType, EdgeDataType >.

void ConnectedComponentsProgram::update ( graphchi_vertex< VertexDataType, EdgeDataType > &  vertex,
graphchi_context gcontext 
)
inlinevirtual

Vertex update function. On first iteration ,each vertex chooses a label = the vertex id. On subsequent iterations, each vertex chooses the minimum of the neighbor's label (and itself).

Broadcast new label to neighbors by writing the value to the incident edges. Note: on first iteration, write only to out-edges to avoid overwriting data (this is kind of a subtle point)

Implements graphchi::GraphChiProgram< VertexDataType, EdgeDataType >.


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