Galois
|
#include <cassert>
#include <cstdlib>
#include <boost/utility.hpp>
#include "galois/config.h"
#include "galois/gIO.h"
#include "galois/MethodFlags.h"
#include "galois/substrate/PtrLock.h"
Go to the source code of this file.
Classes | |
class | galois::runtime::Lockable |
All objects that may be locked (nodes primarily) must inherit from Lockable. More... | |
class | galois::runtime::LockManagerBase |
class | galois::runtime::SimpleRuntimeContext |
struct | galois::runtime::AlwaysLockObj |
struct | galois::runtime::CheckedLockObj |
Namespaces | |
galois | |
The Galois namespace containing all Galois structures and functions. | |
galois::runtime | |
Internal Galois functionality - Use at your own risk. | |
Enumerations | |
enum | galois::runtime::ConflictFlag { galois::runtime::CONFLICT = -1, galois::runtime::NO_CONFLICT = 0, galois::runtime::REACHED_FAILSAFE = 1, galois::runtime::BREAK = 2 } |
Functions | |
void | galois::runtime::signalConflict (Lockable *=nullptr) |
void | galois::runtime::signalFailSafe (void) |
SimpleRuntimeContext * | galois::runtime::getThreadContext () |
get the current conflict detection class, may be null if not in parallel region More... | |
void | galois::runtime::setThreadContext (SimpleRuntimeContext *n) |
used by the parallel code to set up conflict detection per thread More... | |
bool | galois::runtime::shouldLock (const galois::MethodFlag g) |
Helper function to decide if the conflict detection lock should be taken. More... | |
void | galois::runtime::doAcquire (Lockable *lockable, galois::MethodFlag m) |
actual locking function. Will always lock. More... | |
void | galois::runtime::acquire (Lockable *lockable, galois::MethodFlag m) |
Master function which handles conflict detection used to acquire a lockable thing. More... | |
Variables | |
thread_local std::jmp_buf | galois::runtime::execFrame |