AVIunordered::process Struct Reference

Functor for loop body. More...

#include <AVIunordered.h>

List of all members.

Public Member Functions

 process (Graph &graph, std::vector< int > &inDegVec, MeshInit &meshInit, GlobalVec &g, GaloisRuntime::PerCPU< LocalVec > &perIterLocalVec, const AVIComparator &aviCmp, bool createSyncFiles, IterCounter &iter)
template<typename ContextTy >
void operator() (const GNode &src, ContextTy &lwl)
 Loop body.

Public Attributes

Graphgraph
std::vector< int > & inDegVec
MeshInitmeshInit
GlobalVecg
GaloisRuntime::PerCPU< LocalVec > & perIterLocalVec
const AVIComparatoraviCmp
bool createSyncFiles
IterCounteriter

Detailed Description

Functor for loop body.


Constructor & Destructor Documentation

AVIunordered::process::process ( Graph graph,
std::vector< int > &  inDegVec,
MeshInit meshInit,
GlobalVec g,
GaloisRuntime::PerCPU< LocalVec > &  perIterLocalVec,
const AVIComparator aviCmp,
bool  createSyncFiles,
IterCounter iter 
) [inline]

Member Function Documentation

template<typename ContextTy >
void AVIunordered::process::operator() ( const GNode src,
ContextTy &  lwl 
) [inline]

Loop body.

The loop body uses one-shot optimization, where we grab abstract locks on the node and its neighbors before performing the udpates. This removes the need for saving and performing undo operations.

Parameters:
src is active elemtn
lwl is the worklist handle

Member Data Documentation


The documentation for this struct was generated from the following file:
Generated on Tue Aug 2 11:51:26 2011 for Galois by  doxygen 1.6.3