Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::PartitioningOpQueue Class Reference

#include <partitions.h>

Inheritance diagram for Realm::PartitioningOpQueue:
Collaboration diagram for Realm::PartitioningOpQueue:

Public Member Functions

 PartitioningOpQueue (CoreReservation *_rsrv, BackgroundWorkManager *_bgwork)
 
virtual ~PartitioningOpQueue (void)
 
void enqueue_partitioning_operation (PartitioningOperation *op)
 
void enqueue_partitioning_microop (PartitioningMicroOp *uop)
 
void worker_thread_loop (void)
 
bool do_work (TimeLimit work_until)
 
- Public Member Functions inherited from Realm::BackgroundWorkItem
 BackgroundWorkItem (const std::string &_name)
 
virtual ~BackgroundWorkItem (void)
 
void add_to_manager (BackgroundWorkManager *_manager, int _numa_domain=-1, long long _min_timeslice_needed=-1)
 

Static Public Member Functions

static void configure_from_cmdline (std::vector< std::string > &cmdline)
 
static void start_worker_threads (CoreReservationSet &crs, BackgroundWorkManager *_bgwork)
 
static void stop_worker_threads (void)
 

Protected Attributes

atomic< bool > shutdown_flag
 
CoreReservationrsrv
 
PartitioningOperation::OpList op_list
 
PartitioningMicroOp::MicroOpList uop_list
 
Mutex mutex
 
Mutex::CondVar condvar
 
std::vector< Thread * > workers
 
bool work_advertised
 
- Protected Attributes inherited from Realm::BackgroundWorkItem
std::string name
 
BackgroundWorkManagermanager
 
int numa_domain
 
long long min_timeslice_needed
 
unsigned index
 

Additional Inherited Members

- Protected Member Functions inherited from Realm::BackgroundWorkItem
void make_active (void)
 

Constructor & Destructor Documentation

◆ PartitioningOpQueue()

Realm::PartitioningOpQueue::PartitioningOpQueue ( CoreReservation _rsrv,
BackgroundWorkManager _bgwork 
)

◆ ~PartitioningOpQueue()

virtual Realm::PartitioningOpQueue::~PartitioningOpQueue ( void  )
virtual

Member Function Documentation

◆ configure_from_cmdline()

static void Realm::PartitioningOpQueue::configure_from_cmdline ( std::vector< std::string > &  cmdline)
static

◆ do_work()

bool Realm::PartitioningOpQueue::do_work ( TimeLimit  work_until)
virtual

◆ enqueue_partitioning_microop()

void Realm::PartitioningOpQueue::enqueue_partitioning_microop ( PartitioningMicroOp uop)

◆ enqueue_partitioning_operation()

void Realm::PartitioningOpQueue::enqueue_partitioning_operation ( PartitioningOperation op)

◆ start_worker_threads()

static void Realm::PartitioningOpQueue::start_worker_threads ( CoreReservationSet crs,
BackgroundWorkManager _bgwork 
)
static

◆ stop_worker_threads()

static void Realm::PartitioningOpQueue::stop_worker_threads ( void  )
static

◆ worker_thread_loop()

void Realm::PartitioningOpQueue::worker_thread_loop ( void  )

Member Data Documentation

◆ condvar

Mutex::CondVar Realm::PartitioningOpQueue::condvar
protected

◆ mutex

Mutex Realm::PartitioningOpQueue::mutex
protected

◆ op_list

PartitioningOperation::OpList Realm::PartitioningOpQueue::op_list
protected

◆ rsrv

CoreReservation* Realm::PartitioningOpQueue::rsrv
protected

◆ shutdown_flag

atomic<bool> Realm::PartitioningOpQueue::shutdown_flag
protected

◆ uop_list

PartitioningMicroOp::MicroOpList Realm::PartitioningOpQueue::uop_list
protected

◆ work_advertised

bool Realm::PartitioningOpQueue::work_advertised
protected

◆ workers

std::vector<Thread *> Realm::PartitioningOpQueue::workers
protected

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