galois | The Galois namespace containing all Galois structures and functions |
DEPRECATED | Deprecated Galois functions |
graphs | Parallel data graph structures in Galois |
PartitioningScaffold | Default fields and functions all CuSP partitioners use; this is a class to inherit from |
ReadMasterAssignment | Policies that use the read assignment of nodes as the masters |
CustomMasterAssignment | Policies that use a custom assignment of masters (from the user) |
DistGraph | Base DistGraph class that all distributed graphs extend from |
IdLess | Used to sort edges in the sort edges function |
MiningGraph | |
NewDistGraphGeneric | |
BufferedGraph | Class that loads a portion of a Galois graph from disk directly into memory buffers for access |
read_default_graph_tag | |
read_with_aux_graph_tag | |
read_lc_inout_graph_tag | |
read_with_aux_first_graph_tag | |
EdgeSortValue | Proxy object for internal EdgeSortReference |
FileGraph | Graph that mmaps Galois gr files for access |
FileGraphWriter | Simplifies writing graphs |
LC_Adaptor_Graph | |
with_no_lockable | If true, do not use abstract locks in graph |
LC_CSR_CSC_Graph | An bidirectional LC_CSR_Graph that allows the construction of in-edges from its outedges |
LC_CSR_Graph | Local computation graph (i.e., graph structure does not change) |
with_edge_data | |
with_file_edge_data | |
with_id | |
with_no_lockable | If true, do not use abstract locks in graph |
with_node_data | |
with_numa_alloc | If true, use NUMA-aware graph allocation; otherwise, use NUMA interleaved allocation |
with_out_of_line_lockable | If true, store abstract locks separate from nodes |
LC_CSR_Hypergraph | Local computation graph (i.e., graph structure does not change) |
with_edge_data | |
with_file_edge_data | |
with_id | |
with_no_lockable | If true, do not use abstract locks in graph |
with_node_data | |
with_numa_alloc | If true, use NUMA-aware graph allocation |
with_out_of_line_lockable | If true, store abstract locks separate from nodes |
LC_InlineEdge_Graph | Local computation graph (i.e., graph structure does not change) |
NodeInfo | |
with_compressed_node_ptr | Compress representation of graph at the expense of one level of indirection on accessing neighbors of a node |
with_edge_data | |
with_file_edge_data | |
with_id | |
with_no_lockable | |
with_node_data | |
with_numa_alloc | |
with_out_of_line_lockable | |
LC_InOut_Graph | Modify a LC_Graph to have in and out edges |
in_edge_iterator | |
with_edge_data | |
with_node_data | |
LC_Linear_Graph | Local computation graph (i.e., graph structure does not change) |
NodeInfo | |
with_edge_data | |
with_file_edge_data | |
with_id | |
with_no_lockable | |
with_node_data | |
with_numa_alloc | |
with_out_of_line_lockable | |
LC_Morph_Graph | Local computation graph that allows addition of nodes (but not removals) if the maximum degree of a node is known at the time it is added |
dst_equals | Functor: contains an operator to compare the destination of an edge with a particular node |
EdgeHolder | Linked list structure holding together blocks of memory that stores edges |
makeGraphNode | Functor that returns pointers to NodeInfo objects given references |
NodeInfo | Class that stores node info (e.g |
with_edge_data | Struct used to define the type of edge data through the template parameter |
with_file_edge_data | Struct used to define the type of file edge data through the template parameter |
with_id | Struct that allows activation of the HasId template parameter Example: using Graph = LC_Morph_Graph::with_id<true> defines LC_Morph_Graph with HasId = true |
with_no_lockable | Struct used to define the HasNoLockable template parameter |
with_node_data | Struct used to define the type of node data through the template parameter |
with_numa_alloc | Struct used to define the UseNumaAlloc template parameter |
with_out_of_line_lockable | Struct used to define the HasOutOfLineLockable template parameter |
Morph_SepInOut_Graph | A Graph |
AuxNode | |
with_directional | |
with_edge_data | |
with_file_edge_data | |
with_no_lockable | If true, do not use abstract locks in graph |
with_node_data | |
with_sorted_neighbors | |
MorphGraph | A graph that can have new nodes and edges added to it |
AuxNode | Wrapper around a graph node that provides a lock for it as well as in-neighbor tracking |
with_directional | Struct used to define directionality of the graph |
with_edge_data | Struct used to define the type of edge data in the graph |
with_file_edge_data | Struct used to define the type of file edge data in the graph |
with_no_lockable | Struct used to define the HasNoLockable template parameter as a type in the struct |
with_node_data | Struct used to define the type of node data in the graph |
with_sorted_neighbors | Struct used to define if neighbors are sorted or not in the graph |
MorphHyperGraph | A graph that can have new nodes and edges added to it |
AuxNode | Wrapper around a graph node that provides a lock for it as well as in-neighbor tracking |
with_directional | Struct used to define directionality of the graph |
with_edge_data | Struct used to define the type of edge data in the graph |
with_file_edge_data | Struct used to define the type of file edge data in the graph |
with_no_lockable | Struct used to define the HasNoLockable template parameter as a type in the struct |
with_node_data | Struct used to define the type of node data in the graph |
with_sorted_neighbors | Struct used to define if neighbors are sorted or not in the graph |
BindSegmentGraph | Binds the segment parameter of an out-of-core graph so that it can be used in place of a non out-of-core graph |
OCFileGraph | Like FileGraph but allows partial loading of the graph |
EdgeReference | |
read_oc_immutable_edge_graph_tag | |
OCImmutableEdgeGraph | |
segment_type | |
with_edge_data | |
with_id | |
with_no_lockable | |
with_node_data | |
with_numa_alloc | |
with_out_of_line_lockable | |
OfflineGraph | |
OfflineGraphWriter | |
ReadGraphConstructFrom | |
ReadGraphConstructNodesFrom | |
ReadGraphConstructEdgesFrom | |
ReadGraphConstructOutEdgesFrom | |
ReadGraphConstructInEdgesFrom | |
SpatialTree2d | Stores sets of objects at specific spatial coordinates in a quad tree |
is_segmented | |
GluonEdgeSubstrate | Gluon communication substrate that handles communication given a user graph |
GluonSubstrate | Gluon communication substrate that handles communication given a user graph |
gstl | Standard library structures that use Galois allocators |
StrMaker | |
StrMaker< std::string > | |
StrMaker< Str > | |
StrMaker< const char * > | |
ParallelSTL | Parallel versions of STL library algorithms |
find_if_helper | |
sort_helper | |
neq_to | Not equal in terms of less-than |
partition_helper | |
partition_helper_state | |
pair_dist | |
runtime | Internal Galois functionality - Use at your own risk |
DEPRECATED | Functions used by the Galois runtime that are deprecated |
ParaMeter | Functions used by ParaMeter, which measures parallelism of loops |
StepStatsBase | |
OrderedStepStats | |
UnorderedStepStats | |
FIFO_WL | |
RAND_WL | |
LIFO_WL | |
ChooseWL | |
ChooseWL< T, SchedType::FIFO > | |
ChooseWL< T, SchedType::LIFO > | |
ChooseWL< T, SchedType::RAND > | |
ParaMeterExecutor | |
DistStatManager | Class responsible for tracking all statistics of a running distributed Galois program and reporting them at the end of program execution |
MemUsageTracker | Class that tracks memory usage (mainly of send and receive buffers) |
NetworkInterface | A class that defines functions that a network interface in Galois should have |
NetworkIO | Class for the network IO layer which is responsible for doing sends/receives of data |
message | Message structure for sending data across the network |
SerializeBuffer | Buffer for serialization of data |
DeSerializeBuffer | Buffer for deserialization of data |
LazyRef | LazyRef structure; used to store both a type and an offset to begin saving data into |
StatRecvHelper | |
Lockable | All objects that may be locked (nodes primarily) must inherit from Lockable |
LockManagerBase | |
SimpleRuntimeContext | |
AlwaysLockObj | |
CheckedLockObj | |
ForEachExecutor< worklists::Deterministic< T >, FunctionTy, ArgsTy > | |
AbortHandler | |
ForEachExecutor | |
RunQueueState | |
T1 | |
T2 | |
ThreadLocalBasics | |
ThreadLocalData | |
reiterator | |
reiterator< WLTy, IterTy, typename std::enable_if< has_with_iterator< WLTy >(0)>::type > | |
has_serialize | Indicates if T has the serialize trait |
is_copyable | Indicates if T is trivially copyable |
is_serializable | Indicates if T is serializable |
is_memory_copyable | Indicates if T is memory copyable |
iterable | |
LoopStatistics | |
LoopStatistics< false > | |
MallocHeap | [Example Third Party Allocator] |
ThreadPrivateHeap | [Example Third Party Allocator] |
LockedHeap | Apply a lock to a heap |
ZeroOut | |
AddHeader | Add a header to objects |
OwnerTaggedHeap | Allow looking up parent heap pointers |
FreeListHeap | Maintain a freelist |
SelfLockFreeListHeap | Maintain a freelist using a lock which doesn't cover SourceHeap |
BlockHeap | |
BumpHeap | This implements a bump pointer though chunks of memory |
BumpWithMallocHeap | This implements a bump pointer though chunks of memory that falls back to malloc if the source heap cannot accommodate an allocation |
SystemHeap | This is the base source of memory for all allocators |
StaticSingleInstance | |
PageHeap | |
SizedHeapFactory | |
VariableSizeHeap | Scalable variable-size allocations |
FixedSizeHeap | Main scalable allocator in Galois |
SerialNumaHeap | |
FixedSizeAllocator | A fixed size block allocator |
rebind | |
FixedSizeAllocator< void > | |
rebind | |
Pow_2_BlockHeap | |
Pow_2_BlockAllocator | |
rebind | |
Pow_2_BlockAllocator< void > | |
rebind | |
ExternalHeapAllocator | Keep a reference to an external allocator |
rebind | |
ExternalHeapAllocator< void, HeapTy > | |
rebind | |
SerialNumaAllocator | |
rebind | |
LocalRange | |
StandardRange | |
SpecificRange | SpecificRange is a range type where a threads range is specified by an an int array that tells you where each thread should begin its iteration |
SharedMem | |
RunningMin | |
RunningMax | |
RunningSum | |
RunningVec | |
NamedStat | |
AggregStat | |
StatTotal | |
StatManager | |
ThreadTimer | |
ThreadTimers | |
PerThreadTimer | |
PerThreadTimer< false > | |
Fixed2DGraphTiledExecutor | |
UserContextAccess | Backdoor to allow runtime methods to access private data in UserContext |
GlobalObject | A class to be inherited from so that all child classes will have a tracked unique ID |
FieldFlags | Each field has a FieldFlags object that indicates synchronization status of that field |
substrate | Contains threading and machine OS support |
Barrier | |
CacheLineStorage | |
ThreadTopoInfo | |
MachineTopoInfo | |
HWTopoInfo | |
PaddedLock | PaddedLock is a spinlock |
PaddedLock< true > | |
PaddedLock< false > | |
PerBackend | |
PerThreadStorage | |
PerSocketStorage | |
PtrLock | PtrLock is a spinlock and a pointer |
DummyPtrLock | |
SharedMem | |
SimpleLock | SimpleLock is a spinlock |
DummyLock | Dummy Lock implements the lock interface without a lock for serial code |
StaticInstance | |
TerminationDetection | |
ThreadPool | |
dedicated_ty | Type for setting fastmode |
fastmode_ty | Type for shutting down thread |
per_signal | Type to switch to dedicated mode |
shutdown_ty | |
ThreadRWlock | |
worklists | Scheduling policies for Galois |
Deterministic | Deterministic execution |
BulkSynchronous | Bulk-synchronous scheduling |
ExternalReference | |
NoGlobalQueue | |
LocalQueue | |
OrderedByIntegerMetric | Approximate priority scheduling |
with_back_scan_prevention | |
with_barrier | |
with_block_period | |
with_container | |
with_descending | |
with_indexer | |
with_monotonic | |
OrderedList | |
OwnerComputes | |
with_container | |
with_indexer | |
ChunkHeader | |
PerThreadChunkQueue | |
PerThreadChunkStack | |
StealingQueue | |
PerThreadChunkMaster | |
Wrapper | Simple Container Wrapper worklist (not scalable) |
StableIterator | Low-overhead worklist when initial range is not invalidated by the operator |
with_container | |
with_iterator | |
with_steal | |
ConExtListNode | |
ConExtIterator | |
ConExtLinkedStack | |
ConExtLinkedQueue | |
DummyIndexer | |
DistMemSys | Explicit class to initialize the Galois Runtime |
DGAccumulator | Distributed sum-reducer for getting the sum of some value across multiple hosts |
DGReduceMax | Distributed max-reducer for getting the max of some value across multiple hosts |
DGReduceMin | Distributed min-reducer for getting the min of some value across multiple hosts |
DGTerminator | Distributed sum-reducer for getting the sum of some value across multiple hosts |
CopyableArray | A subclass of std::array that is marked trivially copyable if the type is also memory copyable |
GAtomic | An atomic wrapper that provides sensible atomic behavior for most primative data types |
GAtomicPadded | Cache-line padded version of GAtomic |
CopyableAtomic | Class that inherits from std::atomic to make it copyable by defining a copy constructor |
InsertBag | Unordered collection of elements |
Iterator | |
GChecked | Conflict-checking wrapper for any type |
GChecked< void > | |
Pair | Struct that contains 2 elements |
TupleOfThree | Struct that contains 3 elements |
DynamicBitSet | Concurrent dynamically allocated bitset |
InvalidBitsetFnTy | A structure representing an empty bitset |
FixedSizeBagBase | Unordered collection of bounded size |
FixedSizeRing | Ordered collection of bounded size |
flat_map | Simple map data structure, based off a single array |
value_compare | |
gdeque | Like std::deque but use Galois memory management functionality |
Block | |
Iterator | |
debug | |
debug< 0 > | |
gslist_base | |
promise_to_dealloc | Tag for methods that depend on user to deallocate memory, although gslist will destroy elements |
IterRange | |
SerFIFO | |
SerStack | |
LargeArray | Large array of objects with proper specialization for void type and supporting various allocation and construction policies |
size_of | |
LargeArray< void > | Void specialization |
size_of | |
LazyArray | This is a container that encapsulates space for a constant size array |
StrictObject | Single object with specialization for void type |
StrictObject< void > | |
LazyObject | Single (uninitialized) object with specialization for void type |
size_of | |
LazyObject< void > | |
size_of | |
DoAll | Helper functor class to invoke galois::do_all on provided args Can be used to choose between galois::do_all and other equivalents such as std::for_each |
StdForEach | Helper functor to invoke std::for_each with the same interface as galois::do_all |
ForEach | |
WhileQ | |
NoDerefIterator | Modify an iterator so that *it == it |
optional | Galois version of boost::optional |
PerThreadContainer | |
PerThreadVector | |
PerThreadDeque | |
PerThreadGdeque | |
PerThreadList | |
PerThreadMap | |
PerThreadSet | |
PerThreadMinHeap | |
PODResizeableArray | This is a container that encapsulates a resizeable array of plain-old-datatype (POD) elements |
ThreadSafeOrderedSet | Thread-safe ordered set |
MinHeap | |
RevCmp | |
ThreadSafeMinHeap | Thread-safe min heap |
Reducible | A Reducible stores per-thread values of a variable of type T and merges multiple values into one |
gmax | Gmax is the functional form of std::max |
gmin | Gmax is the functional form of std::max |
identity_value | |
identity_value_zero | |
identity_value_min | |
identity_value_max | |
GAccumulator | Accumulator for T where accumulation is plus |
GReduceMax | Accumulator for T where accumulation is max |
GReduceMin | Accumulator for T where accumulation is min |
GReduceLogicalAnd | Logical AND reduction |
GReduceLogicalOr | Logical OR reduction |
SharedMemSys | SharedMemSys is an explicit class to initialize the Galois runtime |
Timer | A simple timer |
TimeAccumulator | A multi-start time accumulator |
StatTimer | Galois Timer that automatically reports stats upon destruction Provides statistic interface around timer |
CondStatTimer | |
CondStatTimer< false > | |
trait_has_type | |
trait_has_value | |
trait_has_svalue | |
get_trait_type | Returns the type associated with the given trait in a tuple |
function_traits | |
function_traits< T, typename std::enable_if< has_function_traits< T >(0)>::type > | |
loopname_tag | Indicate name to appear in statistics |
loopname | |
steal_tag | Indicate whetherlink do_all()} loops should perform work-stealing |
steal | |
wl_tag | Indicates worklist to use |
s_wl | |
parallel_break_tag | Indicates the operator may request the parallel loop to be suspended and a given function run in serial |
parallel_break | |
no_pushes_tag | Indicates the operator does not generate new work and push it on the worklist |
no_pushes | |
per_iter_alloc_tag | Indicates the operator may request the access to a per-iteration allocator |
per_iter_alloc | |
no_stats_tag | Indicates the operator doesn't need its execution stats recorded |
no_stats | |
more_stats_tag | Indicates the operator needs detailed stats Must provide loopname to enable this flag |
more_stats | |
no_conflicts_tag | Indicates the operator doesn't need abort support |
no_conflicts | |
fixed_neighborhood_tag | Indicates that the neighborhood set does not change through out i.e |
fixed_neighborhood | |
intent_to_read_tag | Indicates that the operator uses the intent to read flag |
intent_to_read | |
neighborhood_visitor_tag | Indicates the operator has a function that visits the neighborhood of the operator without modifying it |
neighborhood_visitor | |
det_parallel_break_tag | Indicates the operator has a function that allows a galois::for_each loop to be exited deterministically |
det_parallel_break | |
det_id_tag | Indicates the operator has a function that optimizes the generation of unique ids for active elements |
det_id | |
local_state_tag | Indicates the operator has a type that encapsulates state that is passed between the suspension and resumpsion of an operator during deterministic scheduling |
local_state | |
op_tag | For distributed Galois |
chunk_size_tag | |
chunk_size | Specify chunk size for do_all_coupled & do_all_choice at compile time or at runtime |
TwoLevelIterBase | Common functionality of TwoLevelIterators |
TwoLevelFwdIter | Two-Level forward iterator |
TwoLevelBiDirIter | Two-Level bidirectional iterator |
TwoLevelRandIter | Two-Level random access iterator |
ChooseTwoLevelIterator | Type function to select appropriate two-level iterator |
ChooseStlTwoLevelIterator | Type function to select appropriate two-level iterator |
TwoLevelIteratorA | Alternate implementation of ChooseTwoLevelIterator |
GetBegin | Helper functor, returns t.end() |
GetEnd | Helper functor, returns t.end() |
UnionFindNode | Intrusive union-find implementation |
UserContext | This is the object passed to the user's parallel loop |
runtime | |
ForEachExecutor< galois::worklists::ParaMeter< T >, FunctionTy, ArgsTy > | |
worklists | |
ParaMeter | |
CUDA_Context_Common | |
CUDA_Context_Common_Edges | |
CUDA_Context_Field | |
CUDA_Context_Field_Edges | |
CUDA_Context_Shared | |
CUDA_Context_Shared_Edges | |
DynamicBitset | Dynamic Bitset, CUDA version |
DynamicBitsetIterator | |
EdgeMarshalGraph | |
FennelP | |
GenericCVC | |
GenericCVCColumnFlip | |
GenericHVC | |
GingerP | |
IdentityIterator | |
IterationContext | |
MarshalGraph | |
MiningPolicyDegrees | |
MiningPolicyNaive | |
NetworkIOMPI | MPI implementation of network IO |
NoCommunication | |
StatsFileManager | |
SugarColumnFlipP | |
SugarP | |