Galois
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
galois::runtime::Fixed2DGraphTiledExecutor< Graph, UseExp > Class Template Reference

#include <TiledExecutor.h>

Public Member Functions

 Fixed2DGraphTiledExecutor (Graph &g, int cutoff=0)
 
 ~Fixed2DGraphTiledExecutor ()
 Report the number of probe block failures to statistics. More...
 
template<typename Function >
void execute (iterator firstX, iterator lastX, iterator firstY, iterator lastY, size_t sizeX, size_t sizeY, Function fn, bool _useLocks, unsigned numIterations=1)
 Execute a function on a provided X set of nodes and Y set of nodes for a certain number of iterations. More...
 
template<typename Function >
void executeDense (iterator firstX, iterator lastX, iterator firstY, iterator lastY, size_t sizeX, size_t sizeY, Function fn, bool _useLocks, int numIterations=1)
 Execute a function on a provided X set of nodes and Y set of nodes for a certain number of iterations. More...
 

Constructor & Destructor Documentation

template<typename Graph , bool UseExp = false>
galois::runtime::Fixed2DGraphTiledExecutor< Graph, UseExp >::Fixed2DGraphTiledExecutor ( Graph &  g,
int  cutoff = 0 
)
inline
template<typename Graph , bool UseExp = false>
galois::runtime::Fixed2DGraphTiledExecutor< Graph, UseExp >::~Fixed2DGraphTiledExecutor ( )
inline

Report the number of probe block failures to statistics.

Member Function Documentation

template<typename Graph , bool UseExp = false>
template<typename Function >
void galois::runtime::Fixed2DGraphTiledExecutor< Graph, UseExp >::execute ( iterator  firstX,
iterator  lastX,
iterator  firstY,
iterator  lastY,
size_t  sizeX,
size_t  sizeY,
Function  fn,
bool  _useLocks,
unsigned  numIterations = 1 
)
inline

Execute a function on a provided X set of nodes and Y set of nodes for a certain number of iterations.

Only update nodes x and y if an edge exists between them (sparse).

Template Parameters
Functionfunction type
Parameters
firstXfirst element in X dimension
lastXlast element (non inclusive) in X dimension
firstYfirst element in Y dimension
lastYlast element (non inclusive) in Y dimension
sizeXdesired size of blocks in X dimension
sizeYdesired size of blocks in Y dimension
fnFunction used to update nodes
_useLockstrue if locks are desired when updating blocks
numIterationsMax number of iterations to run each block in the tiled executor for
template<typename Graph , bool UseExp = false>
template<typename Function >
void galois::runtime::Fixed2DGraphTiledExecutor< Graph, UseExp >::executeDense ( iterator  firstX,
iterator  lastX,
iterator  firstY,
iterator  lastY,
size_t  sizeX,
size_t  sizeY,
Function  fn,
bool  _useLocks,
int  numIterations = 1 
)
inline

Execute a function on a provided X set of nodes and Y set of nodes for a certain number of iterations.

Updates nodes x and y regardless of whether or not an edge exists between them (dense).

Template Parameters
Functionfunction type
Parameters
firstXfirst element in X dimension
lastXlast element (non inclusive) in X dimension
firstYfirst element in Y dimension
lastYlast element (non inclusive) in Y dimension
sizeXdesired size of blocks in X dimension
sizeYdesired size of blocks in Y dimension
fnFunction used to update nodes
_useLockstrue if locks are desired when updating blocks
numIterationsMax number of iterations to run each block in the tiled executor for

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