#include <ParallelWork.h>
Classes | |
| struct | ThreadLocalData |
Public Member Functions | |
| ForEachWork (FunctionTy &f, const char *l) | |
| template<typename W > | |
| ForEachWork (W &w, FunctionTy &f, const char *l) | |
| template<typename RangeTy > | |
| void | AddInitialWork (RangeTy range) |
| void | operator() () |
Protected Types | |
| typedef T | value_type |
| typedef WorkListTy::template retype< value_type >::WL | WLTy |
| typedef WorkList::GFIFO < value_type > | AbortedList |
Protected Member Functions | |
| void | commitIteration (ThreadLocalData &tld) |
| GALOIS_ATTRIBUTE_NOINLINE void | abortIteration (value_type val, ThreadLocalData &tld, bool recursiveAbort) |
| void | doProcess (boost::optional< value_type > &p, ThreadLocalData &tld) |
| GALOIS_ATTRIBUTE_NOINLINE void | handleBreak (ThreadLocalData &tld) |
| bool | runQueueSimple (ThreadLocalData &tld) |
| template<bool limit, typename WL > | |
| bool | runQueue (ThreadLocalData &tld, WL &lwl, bool recursiveAbort) |
| GALOIS_ATTRIBUTE_NOINLINE bool | handleAborts (ThreadLocalData &tld) |
| template<bool checkAbort> | |
| void | go () |
Protected Attributes | |
| WLTy & | wl |
| FunctionTy & | origFunction |
| WLTy | default_wl |
| const char * | loopname |
| TerminationDetection & | term |
| PerPackageStorage< AbortedList > | aborted |
| LL::CacheLineStorage< bool > | broke |
typedef WorkList::GFIFO<value_type> GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::AbortedList [protected] |
typedef T GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::value_type [protected] |
typedef WorkListTy::template retype<value_type>::WL GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::WLTy [protected] |
| GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::ForEachWork | ( | FunctionTy & | f, | |
| const char * | l | |||
| ) | [inline] |
| GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::ForEachWork | ( | W & | w, | |
| FunctionTy & | f, | |||
| const char * | l | |||
| ) | [inline] |
| GALOIS_ATTRIBUTE_NOINLINE void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::abortIteration | ( | value_type | val, | |
| ThreadLocalData & | tld, | |||
| bool | recursiveAbort | |||
| ) | [inline, protected] |
| void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::AddInitialWork | ( | RangeTy | range | ) | [inline] |
| void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::commitIteration | ( | ThreadLocalData & | tld | ) | [inline, protected] |
| void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::doProcess | ( | boost::optional< value_type > & | p, | |
| ThreadLocalData & | tld | |||
| ) | [inline, protected] |
| void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::go | ( | ) | [inline, protected] |
| GALOIS_ATTRIBUTE_NOINLINE bool GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::handleAborts | ( | ThreadLocalData & | tld | ) | [inline, protected] |
| GALOIS_ATTRIBUTE_NOINLINE void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::handleBreak | ( | ThreadLocalData & | tld | ) | [inline, protected] |
| void GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::operator() | ( | void | ) | [inline] |
| bool GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::runQueue | ( | ThreadLocalData & | tld, | |
| WL & | lwl, | |||
| bool | recursiveAbort | |||
| ) | [inline, protected] |
| bool GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::runQueueSimple | ( | ThreadLocalData & | tld | ) | [inline, protected] |
PerPackageStorage<AbortedList> GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::aborted [protected] |
LL::CacheLineStorage<bool> GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::broke [protected] |
WLTy GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::default_wl [protected] |
const char* GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::loopname [protected] |
FunctionTy& GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::origFunction [protected] |
TerminationDetection& GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::term [protected] |
WLTy& GaloisRuntime::ForEachWork< WorkListTy, T, FunctionTy >::wl [protected] |
1.6.1