#include <boost/intrusive/slist.hpp>
#include "Galois/Runtime/SimpleLock.h"
#include "Galois/ConflictFlags.h"
Go to the source code of this file.
Classes | |
class | GaloisRuntime::Lockable |
class | GaloisRuntime::SimpleRuntimeContext |
Namespaces | |
namespace | GaloisRuntime |
Typedefs | |
typedef boost::intrusive::slist_base_hook < boost::intrusive::tag < LockableListTag > , boost::intrusive::link_mode < boost::intrusive::normal_link > > | GaloisRuntime::LockableBaseHook |
Functions | |
static SimpleRuntimeContext * | GaloisRuntime::getThreadContext () |
get the current conflict detection class, may be null if not in parallel region | |
void | GaloisRuntime::setThreadContext (SimpleRuntimeContext *n) |
used by the parallel code to set up conflict detection per thread | |
static bool | GaloisRuntime::shouldLock (Galois::MethodFlag g) |
Helper function to decide if the conflict detection lock should be taken. | |
static | GaloisRuntime::__attribute__ ((unused)) void acquire(Lockable *C |
Master function which handles conflict detection. | |
static Galois::MethodFlag m | GaloisRuntime::if (shouldLock(m)) |
Variables | |
__thread SimpleRuntimeContext * | GaloisRuntime::thread_cnx |