Low-level, Galois-agnostic functionality. More...
Classes | |
struct | CacheLineImpl |
struct | CacheLineImpl< T, 0 > |
struct | CacheLineStorage |
class | PaddedLock< true > |
class | PaddedLock< false > |
class | PtrLock< T, true > |
class | PtrLock< T, false > |
class | SimpleLock< true > |
class | SimpleLock< false > |
struct | StaticInstance |
class | ThreadRWlock |
Functions | |
static void | asmPause () |
static void | compilerBarrier () |
static void | flushInstructionPipeline () |
bool | EnvCheck (const char *parm) |
Return true if the Enviroment variable is set. | |
bool | EnvCheck (const char *parm, int &val) |
void | gPrintStr (const std::string &) |
Prints a string. | |
void | gInfoStr (const std::string &) |
Prints an info string (for easy parsing). | |
void | gWarnStr (const std::string &) |
Prints a warning string (for easy parsing). | |
void | gDebugStr (const std::string &) |
Prints a debug string (for easy parsing). | |
void | gErrorStr (const std::string &) |
Prints an error string (for easy parsing). | |
template<typename T > | |
bool | toString (std::ostringstream &os, const T &val) |
Converts a sequence of things to a string. | |
template<typename... Args> | |
void | gPrint (Args...args) |
Prints a sequence of things. | |
template<typename... Args> | |
void | gInfo (Args...args) |
Prints an info string from a sequence of things. | |
template<typename... Args> | |
void | gWarn (Args...args) |
Prints a warning string from a sequence of things. | |
template<typename... Args> | |
void | gDebug (Args...args) |
Prints a debug string from a sequence of things; prints nothing if NDEBUG is defined. | |
template<typename... Args> | |
void | gError (Args...args) |
Prints error message. | |
void | gFlush () |
bool | bindThreadToProcessor (int galois_thread_id) |
Bind thread specified by id to the correct OS thread. | |
unsigned | getProcessorForThread (int galois_thread_id) |
Get physical processor id from virtual Galois thread id. | |
unsigned | getMaxThreads () |
Get number of threads supported. | |
unsigned | getMaxCores () |
Get number of cores supported. | |
unsigned | getMaxPackages () |
Get number of packages supported. | |
unsigned | getPackageForThread (int galois_thread_id) |
Map thread to package. | |
unsigned | getMaxPackageForThread (int galois_thread_id) |
Find the maximum package number for all threads up to and including id. | |
bool | isPackageLeader (int galois_thread_id) |
is this the first thread in a package | |
unsigned | getLeaderForThread (int galois_thread_id) |
unsigned | getLeaderForPackage (int galois_pkg_id) |
static unsigned | fillPackageID (int galois_thread_id) |
static unsigned | getPackageForSelf (int galois_thread_id) |
Optimized when galois_thread_id corresponds to the executing thread. | |
static bool | isPackageLeaderForSelf (int galois_thread_id) |
Optimized when galois_thread_id corresponds to the executing thread. | |
void | LockPairOrdered (PaddedLock< true > &L1, PaddedLock< true > &L2) |
bool | TryLockPairOrdered (PaddedLock< true > &L1, PaddedLock< true > &L2) |
void | UnLockPairOrdered (PaddedLock< true > &L1, PaddedLock< true > &L2) |
void | LockPairOrdered (PaddedLock< false > &L1, PaddedLock< false > &L2) |
bool | TryLockPairOrdered (PaddedLock< false > &L1, PaddedLock< false > &L2) |
void | UnLockPairOrdered (PaddedLock< false > &L1, PaddedLock< false > &L2) |
void | LockPairOrdered (SimpleLock< true > &L1, SimpleLock< true > &L2) |
bool | TryLockPairOrdered (SimpleLock< true > &L1, SimpleLock< true > &L2) |
void | UnLockPairOrdered (SimpleLock< true > &L1, SimpleLock< true > &L2) |
void | LockPairOrdered (SimpleLock< false > &L1, SimpleLock< false > &L2) |
bool | TryLockPairOrdered (SimpleLock< false > &L1, SimpleLock< false > &L2) |
void | UnLockPairOrdered (SimpleLock< false > &L1, SimpleLock< false > &L2) |
static unsigned | getTID () |
void | initTID () |
Variables | |
__thread unsigned | PACKAGE_ID = 0 |
__thread unsigned | TID = 0 |
Low-level, Galois-agnostic functionality.
static void Galois::Runtime::LL::asmPause | ( | ) | [inline, static] |
bool Galois::Runtime::LL::bindThreadToProcessor | ( | int | galois_thread_id | ) |
Bind thread specified by id to the correct OS thread.
static void Galois::Runtime::LL::compilerBarrier | ( | ) | [inline, static] |
bool Galois::Runtime::LL::EnvCheck | ( | const char * | parm, | |
int & | val | |||
) |
bool Galois::Runtime::LL::EnvCheck | ( | const char * | parm | ) |
Return true if the Enviroment variable is set.
static unsigned Galois::Runtime::LL::fillPackageID | ( | int | galois_thread_id | ) | [inline, static] |
static void Galois::Runtime::LL::flushInstructionPipeline | ( | ) | [inline, static] |
void Galois::Runtime::LL::gDebug | ( | Args... | args | ) | [inline] |
Prints a debug string from a sequence of things; prints nothing if NDEBUG is defined.
void Galois::Runtime::LL::gDebugStr | ( | const std::string & | s | ) |
Prints a debug string (for easy parsing).
void Galois::Runtime::LL::gError | ( | Args... | args | ) | [inline] |
Prints error message.
void Galois::Runtime::LL::gErrorStr | ( | const std::string & | s | ) |
Prints an error string (for easy parsing).
unsigned Galois::Runtime::LL::getLeaderForPackage | ( | int | galois_pkg_id | ) |
unsigned Galois::Runtime::LL::getLeaderForThread | ( | int | galois_thread_id | ) |
unsigned Galois::Runtime::LL::getMaxCores | ( | ) |
Get number of cores supported.
unsigned Galois::Runtime::LL::getMaxPackageForThread | ( | int | galois_thread_id | ) |
Find the maximum package number for all threads up to and including id.
unsigned Galois::Runtime::LL::getMaxPackages | ( | ) |
Get number of packages supported.
unsigned Galois::Runtime::LL::getMaxThreads | ( | ) |
Get number of threads supported.
static unsigned Galois::Runtime::LL::getPackageForSelf | ( | int | galois_thread_id | ) | [inline, static] |
Optimized when galois_thread_id corresponds to the executing thread.
unsigned Galois::Runtime::LL::getPackageForThread | ( | int | galois_thread_id | ) |
Map thread to package.
unsigned Galois::Runtime::LL::getProcessorForThread | ( | int | galois_thread_id | ) |
Get physical processor id from virtual Galois thread id.
static unsigned Galois::Runtime::LL::getTID | ( | ) | [inline, static] |
void Galois::Runtime::LL::gFlush | ( | ) |
void Galois::Runtime::LL::gInfo | ( | Args... | args | ) | [inline] |
Prints an info string from a sequence of things.
void Galois::Runtime::LL::gInfoStr | ( | const std::string & | s | ) |
Prints an info string (for easy parsing).
void Galois::Runtime::LL::gPrint | ( | Args... | args | ) | [inline] |
Prints a sequence of things.
void Galois::Runtime::LL::gPrintStr | ( | const std::string & | s | ) |
Prints a string.
void Galois::Runtime::LL::gWarn | ( | Args... | args | ) | [inline] |
Prints a warning string from a sequence of things.
void Galois::Runtime::LL::gWarnStr | ( | const std::string & | s | ) |
Prints a warning string (for easy parsing).
void Galois::Runtime::LL::initTID | ( | ) |
bool Galois::Runtime::LL::isPackageLeader | ( | int | galois_thread_id | ) |
is this the first thread in a package
static bool Galois::Runtime::LL::isPackageLeaderForSelf | ( | int | galois_thread_id | ) | [inline, static] |
Optimized when galois_thread_id corresponds to the executing thread.
void Galois::Runtime::LL::LockPairOrdered | ( | SimpleLock< false > & | L1, | |
SimpleLock< false > & | L2 | |||
) |
void Galois::Runtime::LL::LockPairOrdered | ( | SimpleLock< true > & | L1, | |
SimpleLock< true > & | L2 | |||
) |
void Galois::Runtime::LL::LockPairOrdered | ( | PaddedLock< false > & | L1, | |
PaddedLock< false > & | L2 | |||
) |
void Galois::Runtime::LL::LockPairOrdered | ( | PaddedLock< true > & | L1, | |
PaddedLock< true > & | L2 | |||
) |
bool Galois::Runtime::LL::toString | ( | std::ostringstream & | os, | |
const T & | val | |||
) | [inline] |
Converts a sequence of things to a string.
bool Galois::Runtime::LL::TryLockPairOrdered | ( | SimpleLock< false > & | L1, | |
SimpleLock< false > & | L2 | |||
) |
bool Galois::Runtime::LL::TryLockPairOrdered | ( | SimpleLock< true > & | L1, | |
SimpleLock< true > & | L2 | |||
) |
bool Galois::Runtime::LL::TryLockPairOrdered | ( | PaddedLock< false > & | L1, | |
PaddedLock< false > & | L2 | |||
) |
bool Galois::Runtime::LL::TryLockPairOrdered | ( | PaddedLock< true > & | L1, | |
PaddedLock< true > & | L2 | |||
) |
void Galois::Runtime::LL::UnLockPairOrdered | ( | SimpleLock< false > & | L1, | |
SimpleLock< false > & | L2 | |||
) |
void Galois::Runtime::LL::UnLockPairOrdered | ( | SimpleLock< true > & | L1, | |
SimpleLock< true > & | L2 | |||
) |
void Galois::Runtime::LL::UnLockPairOrdered | ( | PaddedLock< false > & | L1, | |
PaddedLock< false > & | L2 | |||
) |
void Galois::Runtime::LL::UnLockPairOrdered | ( | PaddedLock< true > & | L1, | |
PaddedLock< true > & | L2 | |||
) |
__thread unsigned Galois::Runtime::LL::PACKAGE_ID = 0 |
__thread unsigned Galois::Runtime::LL::TID = 0 |