Galois::WorkList::BulkSynchronous< Container, T, Concurrent > Class Template Reference

Bulk-synchronous scheduling. More...

#include <BulkSynchronous.h>

List of all members.

Classes

struct  rethread
struct  retype
struct  TLD
struct  with_container

Public Types

typedef T value_type

Public Member Functions

 BulkSynchronous ()
void push (const value_type &val)
template<typename ItTy >
void push (ItTy b, ItTy e)
template<typename RangeTy >
void push_initial (const RangeTy &range)
Galois::optional< value_typepop ()

Private Types

typedef Container::template
rethread< Concurrent >::type 
CTy

Private Attributes

CTy wls [2]
Runtime::PerThreadStorage< TLDtlds
Runtime::Barrierbarrier
Runtime::LL::CacheLineStorage
< volatile long > 
some
volatile bool empty

Detailed Description

template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
class Galois::WorkList::BulkSynchronous< Container, T, Concurrent >

Bulk-synchronous scheduling.

Work is processed in rounds, and all newly created work is processed after all the current work in a round is completed.


Member Typedef Documentation

template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
typedef Container::template rethread<Concurrent>::type Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::CTy [private]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
typedef T Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::value_type

Constructor & Destructor Documentation

template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::BulkSynchronous (  )  [inline]

Member Function Documentation

template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
Galois::optional<value_type> Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::pop (  )  [inline]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
template<typename ItTy >
void Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::push ( ItTy  b,
ItTy  e 
) [inline]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
void Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::push ( const value_type val  )  [inline]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
template<typename RangeTy >
void Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::push_initial ( const RangeTy &  range  )  [inline]

Member Data Documentation

template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
Runtime::Barrier& Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::barrier [private]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
volatile bool Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::empty [private]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
Runtime::LL::CacheLineStorage<volatile long> Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::some [private]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
Runtime::PerThreadStorage<TLD> Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::tlds [private]
template<class Container = dChunkedFIFO<>, class T = int, bool Concurrent = true>
CTy Galois::WorkList::BulkSynchronous< Container, T, Concurrent >::wls[2] [private]

The documentation for this class was generated from the following file:

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1