ParallelME Runtime Environment
|
#include <Scheduler.hpp>
Public Member Functions | |
Scheduler (const Scheduler &)=delete | |
Scheduler & | operator= (const Scheduler &)=delete |
virtual void | push (std::unique_ptr< Task > task)=0 |
virtual std::unique_ptr< Task > | pop (Device &device)=0 |
virtual bool | hasWork ()=0 |
The Scheduler class specifies an interface that is used by all the different scheduling policies implemented by the Runtime. New scheduling policies can also be created by deriving this class and using the derived class when constructing a Runtime class instance.
|
pure virtual |
If the scheduler still has work to do. This function is thread-safe.
Implemented in SchedulerPAMS, SchedulerHEFT, and SchedulerFCFS.
Pops a task from the scheduler. This function is thread-safe.
Implemented in SchedulerPAMS, SchedulerHEFT, and SchedulerFCFS.
|
pure virtual |
Pushes a task into the scheduler. This function is thread-safe.
Implemented in SchedulerPAMS, SchedulerHEFT, and SchedulerFCFS.