Galois::WorkList Namespace Reference

Scheduling policies for Galois iterators. More...

Namespaces

namespace  anonymous_namespace{WorkList.h}

Classes

struct  ChunkHeader
class  AltChunkedQueue
class  AltChunkedStack
class  StealingQueue
struct  AltChunkedMaster
class  AltChunkedLIFO
class  AltChunkedFIFO
class  BulkSynchronous
 Bulk-synchronous scheduling. More...
struct  squeue
struct  squeue< false, PS, TQ >
struct  ChunkedMaster
 Common functionality to all chunked worklists. More...
class  ChunkedFIFO
 Chunked FIFO. More...
class  ChunkedLIFO
 Chunked LIFO. More...
class  dChunkedFIFO
 Distributed chunked FIFO. More...
class  dChunkedLIFO
 Distributed chunked LIFO. More...
class  dChunkedBag
 Distributed chunked bag. More...
struct  ExternRef
struct  FIFO
 Simple FIFO worklist (not scalable). More...
struct  GFIFO
struct  LIFO
 Simple LIFO worklist (not scalable). More...
struct  NoGlobalQueue
struct  LocalQueue
struct  OrderedByIntegerMetric
 Approximate priority scheduling. More...
class  OrderedList
struct  OwnerComputes
struct  StableIterator
class  ConExtListNode
class  ConExtIterator
class  ConExtLinkedStack
class  ConExtLinkedQueue
struct  DummyIndexer

Detailed Description

Scheduling policies for Galois iterators.

Unless you have very specific scheduling requirement, dChunkedLIFO or dChunkedFIFO is a reasonable scheduling policy. If you need approximate priority scheduling, use OrderedByIntegerMetric. For debugging, you may be interested in FIFO or LIFO, which try to follow serial order exactly.

The way to use a worklist is to pass it as a template parameter to for_each(). For example,

 Galois::for_each<Galois::WorkList::dChunkedFIFO<32> >(begin, end, fn);

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1