![]() |
Realm
A distributed, event-based tasking library
|
#include <tasks.h>
Public Member Functions | |
| KernelThreadTaskScheduler (Processor _proc, CoreReservation &_core_rsrv) | |
| virtual | ~KernelThreadTaskScheduler (void) |
| virtual void | add_task_queue (TaskQueue *queue) |
| virtual void | remove_task_queue (TaskQueue *queue) |
| virtual void | start (void) |
| virtual void | shutdown (void) |
| virtual void | thread_starting (Thread *thread) |
| virtual void | thread_terminating (Thread *thread) |
Public Member Functions inherited from Realm::ThreadedTaskScheduler | |
| ThreadedTaskScheduler (void) | |
| virtual | ~ThreadedTaskScheduler (void) |
| virtual void | configure_bgworker (BackgroundWorkManager *manager, long long max_timeslice, int numa_domain) |
| void | add_task_context (const TaskContextManager *_manager) |
| virtual void | thread_blocking (Thread *thread) |
| virtual void | thread_ready (Thread *thread) |
| virtual void | set_thread_priority (Thread *thread, int new_priority) |
| void | add_internal_task (InternalTask *itask) |
| void | scheduler_loop (void) |
| void | scheduler_loop_wlock (void) |
Public Member Functions inherited from Realm::ThreadScheduler | |
| virtual | ~ThreadScheduler (void) |
Protected Member Functions | |
| virtual bool | execute_task (Task *task) |
| virtual void | execute_internal_task (InternalTask *task) |
| virtual Thread * | worker_create (bool make_active) |
| virtual void | worker_sleep (Thread *switch_to) |
| virtual void | worker_wake (Thread *to_wake) |
| virtual void | worker_terminate (Thread *switch_to) |
| virtual void | wait_for_work (uint64_t old_work_counter) |
Protected Member Functions inherited from Realm::ThreadedTaskScheduler | |
| Task * | get_best_ready_task (int &task_priority) |
| void | update_worker_count (int active_delta, int unassigned_delta, bool check=true) |
Protected Member Functions inherited from Realm::ThreadScheduler | |
| Thread::State | update_thread_state (Thread *thread, Thread::State new_state) |
| bool | try_update_thread_state (Thread *thread, Thread::State old_state, Thread::State new_state) |
Protected Attributes | |
| Processor | proc |
| CoreReservation & | core_rsrv |
| std::set< Thread * > | all_workers |
| std::set< Thread * > | active_workers |
| std::set< Thread * > | terminating_workers |
| std::map< Thread *, FIFOMutex::CondVar * > | sleeping_threads |
| FIFOMutex::CondVar | shutdown_condvar |
Protected Attributes inherited from Realm::ThreadedTaskScheduler | |
| FIFOMutex | lock |
| std::vector< TaskQueue * > | task_queues |
| std::vector< Thread * > | idle_workers |
| std::set< Thread * > | blocked_workers |
| std::set< Thread * > | spinning_workers |
| std::vector< const TaskContextManager * > | context_managers |
| InternalTask::TaskList | internal_tasks |
| ResumableQueue | resumable_workers |
| std::map< Thread *, int > | worker_priorities |
| atomic< bool > | shutdown_flag |
| int | active_worker_count |
| int | unassigned_worker_count |
| WorkCounter | work_counter |
| WorkCounterUpdater< TaskQueue > | wcu_task_queues |
| WorkCounterUpdater< ResumableQueue > | wcu_resume_queue |
| BackgroundWorkManager::Worker | bgworker |
| atomic< bool > | bgworker_interrupt |
| long long | max_bgwork_timeslice |
Additional Inherited Members | |
Public Attributes inherited from Realm::ThreadedTaskScheduler | |
| bool | cfg_reuse_workers |
| int | cfg_max_idle_workers |
| int | cfg_min_active_workers |
| int | cfg_max_active_workers |
Protected Types inherited from Realm::ThreadedTaskScheduler | |
| typedef PriorityQueue< Thread *, DummyLock > | ResumableQueue |
| Realm::KernelThreadTaskScheduler::KernelThreadTaskScheduler | ( | Processor | _proc, |
| CoreReservation & | _core_rsrv | ||
| ) |
|
virtual |
|
virtual |
Reimplemented from Realm::ThreadedTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
Reimplemented in Realm::PythonThreadTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
Reimplemented in Realm::PythonThreadTaskScheduler.
|
virtual |
Reimplemented from Realm::ThreadedTaskScheduler.
|
virtual |
Implements Realm::ThreadedTaskScheduler.
|
virtual |
Implements Realm::ThreadedTaskScheduler.
|
virtual |
Implements Realm::ThreadScheduler.
|
virtual |
Implements Realm::ThreadScheduler.
|
protectedvirtual |
Reimplemented from Realm::ThreadedTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
Reimplemented in Realm::PythonThreadTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
Reimplemented in Realm::PythonThreadTaskScheduler.
|
protectedvirtual |
Implements Realm::ThreadedTaskScheduler.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |