anonymous_namespace{Termination.cpp}::LocalTerminationDetection Class Reference

Inheritance diagram for anonymous_namespace{Termination.cpp}::LocalTerminationDetection:
Galois::Runtime::TerminationDetection

List of all members.

Classes

struct  TokenHolder

Public Member Functions

 LocalTerminationDetection ()
virtual void initializeThread ()
 Initializes the per-thread state.
virtual void localTermination (bool workHappened)
 Process termination locally.

Private Member Functions

void propToken (bool isBlack)
void propGlobalTerm ()
bool isSysMaster () const

Private Attributes

PerThreadStorage< TokenHolderdata

Constructor & Destructor Documentation

anonymous_namespace{Termination.cpp}::LocalTerminationDetection::LocalTerminationDetection (  )  [inline]

Member Function Documentation

virtual void anonymous_namespace{Termination.cpp}::LocalTerminationDetection::initializeThread (  )  [inline, virtual]

Initializes the per-thread state.

All threads must call this before any call localTermination.

Implements Galois::Runtime::TerminationDetection.

bool anonymous_namespace{Termination.cpp}::LocalTerminationDetection::isSysMaster (  )  const [inline, private]
virtual void anonymous_namespace{Termination.cpp}::LocalTerminationDetection::localTermination ( bool  workHappened  )  [inline, virtual]

Process termination locally.

May be called as often as needed. The argument workHappened signals that since last time it was called, some progress was made that should prevent termination. All threads must call initializeThread() before any thread calls this function. This function should not be on the fast path (this is why it takes a flag, to allow the caller to buffer up work status changes).

Implements Galois::Runtime::TerminationDetection.

void anonymous_namespace{Termination.cpp}::LocalTerminationDetection::propGlobalTerm (  )  [inline, private]
void anonymous_namespace{Termination.cpp}::LocalTerminationDetection::propToken ( bool  isBlack  )  [inline, private]

Member Data Documentation

PerThreadStorage<TokenHolder> anonymous_namespace{Termination.cpp}::LocalTerminationDetection::data [private]

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

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1