Preflowpush.cpp File Reference

Preflow-push application -*- C++ -*-. More...

#include "Galois/Statistic.h"
#include "Galois/Galois.h"
#include "Galois/Bag.h"
#include "Galois/Graphs/Graph.h"
#include "Galois/Graphs/FileGraph.h"
#include "Lonestar/Banner.h"
#include "Lonestar/CommandLine.h"
#include <limits>
#include <algorithm>
#include <set>
#include <iostream>

Classes

struct  anonymous_namespace{Preflowpush.cpp}::Node
struct  anonymous_namespace{Preflowpush.cpp}::Config
struct  anonymous_namespace{Preflowpush.cpp}::UpdateHeights< flag, useCAS >
struct  anonymous_namespace{Preflowpush.cpp}::ResetHeights
struct  anonymous_namespace{Preflowpush.cpp}::FindWork< WLTy >
struct  anonymous_namespace{Preflowpush.cpp}::Process< flag >

Namespaces

namespace  anonymous_namespace{Preflowpush.cpp}

Typedefs

typedef
Galois::Graph::FirstGraph
< Node, int, true > 
anonymous_namespace{Preflowpush.cpp}::Graph
typedef Graph::GraphNode anonymous_namespace{Preflowpush.cpp}::GNode

Functions

std::ostream & anonymous_namespace{Preflowpush.cpp}::operator<< (std::ostream &os, const Node &n)
void anonymous_namespace{Preflowpush.cpp}::checkAugmentingPath ()
void anonymous_namespace{Preflowpush.cpp}::checkHeights ()
void anonymous_namespace{Preflowpush.cpp}::checkConservation (Config &orig)
void anonymous_namespace{Preflowpush.cpp}::verify (Config &orig)
void anonymous_namespace{Preflowpush.cpp}::reduceCapacity (const GNode &src, const GNode &dst, int amount)
template<Galois::MethodFlag flag, typename IncomingWL >
void anonymous_namespace{Preflowpush.cpp}::globalRelabel (IncomingWL &incoming)
void anonymous_namespace{Preflowpush.cpp}::initializeGraph (const char *inputFile, int sourceId, int sinkId, Config *newApp)
template<typename C >
void anonymous_namespace{Preflowpush.cpp}::initializePreflow (C &initial)
template<Galois::MethodFlag flag>
void anonymous_namespace{Preflowpush.cpp}::run ()
int main (int argc, const char **argv)

Variables

const char * anonymous_namespace{Preflowpush.cpp}::name = "Preflow Push"
const char * anonymous_namespace{Preflowpush.cpp}::description
const char * anonymous_namespace{Preflowpush.cpp}::url = "preflow_push"
const char * anonymous_namespace{Preflowpush.cpp}::help = "[-serial] <input file> <source id> <sink id> [global relabel interval]"
const int anonymous_namespace{Preflowpush.cpp}::ALPHA = 6
 Alpha parameter the original Goldberg algorithm to control when global relabeling occurs.
const int anonymous_namespace{Preflowpush.cpp}::BETA = 12
 Beta parameter the original Goldberg algorithm to control when global relabeling occurs.
Config anonymous_namespace{Preflowpush.cpp}::app

Detailed Description

Preflow-push 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:
Donald Nguyen <ddn@cs.utexas.edu>

Function Documentation

int main ( int  argc,
const char **  argv 
)
Generated on Tue Aug 2 11:51:26 2011 for Galois by  doxygen 1.6.3