BetweennessCentrality.cpp File Reference

Betweenness centrality application -*- C++ -*-. More...

#include "Galois/Statistic.h"
#include "Galois/Graphs/FileGraph.h"
#include "Galois/Galois.h"
#include "Lonestar/Banner.h"
#include "Lonestar/CommandLine.h"
#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <map>
#include <set>
#include <stack>
#include <queue>
#include <vector>
#include <cstdlib>

Classes

struct  merge
struct  PerIt< T >
struct  process

Defines

#define DEBUG   0
#define USE_SUCCS   1
#define SHARE_SINGLE_BC   0
#define SHOULD_PRODUCE_CERTIFICATE   0
#define SHOULD_TOUCH_GRAPH   0

Typedefs

typedef
Galois::Graph::LC_FileGraph
< void, void > 
Graph
typedef Graph::GraphNode GNode

Functions

std::vector< GNode > & getSuccs (GNode n)
void initGraphData ()
void resetData ()
void cleanupData ()
void touchGraph ()
void verify ()
void printBCcertificate ()
int main (int argc, const char **argv)

Variables

static const char * name = "Betweenness Centrality"
static const char * description
static const char * url = "betweenness_centrality"
static const char * help = "<input file> <number iterations>"
GraphG
int NumNodes
Galois::GReducible
< std::vector< double >, merge > * 
CB
GaloisRuntime::PerCPU
< std::vector< GNode > * > 
SQG
GaloisRuntime::PerCPU
< std::vector< double > * > 
sigmaG
GaloisRuntime::PerCPU
< std::vector< double > * > 
deltaG
GaloisRuntime::PerCPU
< std::vector< int > * > 
distG
GaloisRuntime::PerCPU
< std::vector< std::vector
< GNode > > > 
succsGlobal
int dummyCnt

Detailed Description

Betweenness centrality application -*- C++ -*-.

License

Galois, a framework to exploit amorphous data-parallelism in irregular programs.

Copyright (C) 2011, The University of Texas at Austin. All rights reserved. UNIVERSITY EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES CONCERNING THIS SOFTWARE AND DOCUMENTATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR ANY PARTICULAR PURPOSE, NON-INFRINGEMENT AND WARRANTIES OF PERFORMANCE, AND ANY WARRANTY THAT MIGHT OTHERWISE ARISE FROM COURSE OF DEALING OR USAGE OF TRADE. NO WARRANTY IS EITHER EXPRESS OR IMPLIED WITH RESPECT TO THE USE OF THE SOFTWARE OR DOCUMENTATION. Under no circumstances shall University be liable for incidental, special, indirect, direct or consequential damages or loss of profits, interruption of business, or related expenses which may arise from use of Software or Documentation, including but not limited to those resulting from defects in Software and/or Documentation, or loss or inaccuracy of data of any kind.

Author:
Dimitrios Prountzos <dprountz@cs.utexas.edu>

Define Documentation

#define DEBUG   0
#define SHARE_SINGLE_BC   0
#define SHOULD_PRODUCE_CERTIFICATE   0
#define SHOULD_TOUCH_GRAPH   0
#define USE_SUCCS   1

Typedef Documentation

typedef Graph::GraphNode GNode
typedef Galois::Graph::LC_FileGraph<void, void> Graph

Function Documentation

void cleanupData (  ) 
std::vector<GNode>& getSuccs ( GNode  n  ) 
void initGraphData (  ) 
int main ( int  argc,
const char **  argv 
)
void printBCcertificate (  ) 
void resetData (  ) 
void touchGraph (  ) 
void verify (  ) 

Variable Documentation

Galois::GReducible<std::vector<double>, merge >* CB
GaloisRuntime::PerCPU<std::vector<double> *> deltaG
const char* description [static]
Initial value:
  "Computes the betweenness centrality of all nodes in a graph\n"
GaloisRuntime::PerCPU<std::vector<int>*> distG
int dummyCnt
Graph* G
const char* help = "<input file> <number iterations>" [static]
const char* name = "Betweenness Centrality" [static]
int NumNodes
GaloisRuntime::PerCPU<std::vector<double> *> sigmaG
GaloisRuntime::PerCPU< std::vector<std::vector<GNode> > > succsGlobal
const char* url = "betweenness_centrality" [static]
Generated on Tue Aug 2 11:51:26 2011 for Galois by  doxygen 1.6.3