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

#include <openmp_internal.h>

Inheritance diagram for Realm::LocalOpenMPProcessor:
Collaboration diagram for Realm::LocalOpenMPProcessor:

Classes

class  OpenMPContextManager
 

Public Member Functions

 LocalOpenMPProcessor (RuntimeImpl *runtime_impl, Processor _me, int _numa_node, int _num_threads, bool _fake_cpukind, CoreReservationSet &crs, size_t _stack_size, bool _force_kthreads)
 
virtual ~LocalOpenMPProcessor (void)
 
virtual void shutdown (void)
 
- Public Member Functions inherited from Realm::LocalTaskProcessor
 LocalTaskProcessor (RuntimeImpl *runtime_impl, Processor _me, Processor::Kind _kind, int num_cores=1)
 
virtual ~LocalTaskProcessor (void)
 
virtual void enqueue_task (Task *task)
 
virtual void enqueue_tasks (Task::TaskList &tasks, size_t num_tasks)
 
virtual void spawn_task (Processor::TaskFuncID func_id, const void *args, size_t arglen, const ProfilingRequestSet &reqs, Event start_event, GenEventImpl *finish_event, EventImpl::gen_t finish_gen, int priority)
 
virtual bool register_task (Processor::TaskFuncID func_id, CodeDescriptor &codedesc, const ByteArrayRef &user_data)
 
virtual void start_threads (void)
 
virtual void add_to_group (ProcessorGroupImpl *group)
 
virtual void remove_from_group (ProcessorGroupImpl *group)
 
virtual void add_internal_task (InternalTask *task)
 
- Public Member Functions inherited from Realm::ProcessorImpl
 ProcessorImpl (RuntimeImpl *runtime_impl, Processor _me, Processor::Kind _kind, int _num_cores=1)
 
virtual ~ProcessorImpl (void)
 
GenEventImplcreate_genevent ()
 
void free_genevent (GenEventImpl *)
 

Protected Attributes

int numa_node
 
int num_threads
 
CoreReservationcore_rsrv
 
OpenMPContextManager ctxmgr
 
ThreadPoolpool
 
- Protected Attributes inherited from Realm::LocalTaskProcessor
ThreadedTaskSchedulersched
 
TaskQueue task_queue
 
ProfilingGauges::AbsoluteRangeGauge< int > ready_task_count
 
DeferredSpawnCache deferred_spawn_cache
 
RWLock task_table_mutex
 
std::map< Processor::TaskFuncID, TaskTableEntrytask_table
 
- Protected Attributes inherited from Realm::ProcessorImpl
LocalEventTableAllocator::FreeList free_local_events
 

Additional Inherited Members

- Static Public Member Functions inherited from Realm::ProcessorImpl
static Processor::Kind get_processor_kind (RuntimeImpl *runtime_impl, Processor processor)
 
- Public Attributes inherited from Realm::ProcessorImpl
Processor me
 
Processor::Kind kind
 
int num_cores
 
- Protected Member Functions inherited from Realm::LocalTaskProcessor
void set_scheduler (ThreadedTaskScheduler *_sched)
 
virtual void execute_task (Processor::TaskFuncID func_id, const ByteArrayRef &task_args)
 
- Protected Member Functions inherited from Realm::ProcessorImpl
void enqueue_or_defer_task (Task *task, Event start_event, DeferredSpawnCache *cache)
 

Constructor & Destructor Documentation

◆ LocalOpenMPProcessor()

Realm::LocalOpenMPProcessor::LocalOpenMPProcessor ( RuntimeImpl runtime_impl,
Processor  _me,
int  _numa_node,
int  _num_threads,
bool  _fake_cpukind,
CoreReservationSet crs,
size_t  _stack_size,
bool  _force_kthreads 
)

◆ ~LocalOpenMPProcessor()

virtual Realm::LocalOpenMPProcessor::~LocalOpenMPProcessor ( void  )
virtual

Member Function Documentation

◆ shutdown()

virtual void Realm::LocalOpenMPProcessor::shutdown ( void  )
virtual

Reimplemented from Realm::LocalTaskProcessor.

Member Data Documentation

◆ core_rsrv

CoreReservation* Realm::LocalOpenMPProcessor::core_rsrv
protected

◆ ctxmgr

OpenMPContextManager Realm::LocalOpenMPProcessor::ctxmgr
protected

◆ num_threads

int Realm::LocalOpenMPProcessor::num_threads
protected

◆ numa_node

int Realm::LocalOpenMPProcessor::numa_node
protected

◆ pool

ThreadPool* Realm::LocalOpenMPProcessor::pool
protected

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