Line data Source code
1 : /*! 2 : * \file 3 : * \brief Class sched::Scheduler_GR. 4 : */ 5 : #ifndef SCHEDULER_GR_HPP__ 6 : #define SCHEDULER_GR_HPP__ 7 : 8 : #include <thread> 9 : 10 : #include "Scheduler/Scheduler.hpp" 11 : 12 : namespace spu 13 : { 14 : namespace sched 15 : { 16 : 17 : class Scheduler_GR : public Scheduler 18 : { 19 : protected: 20 : const size_t R; /**< The maximum number of replicate per stage. */ 21 : 22 : public: 23 : Scheduler_GR(runtime::Sequence& sequence, const size_t R = std::thread::hardware_concurrency()); 24 : Scheduler_GR(runtime::Sequence* sequence, const size_t R = std::thread::hardware_concurrency()); 25 0 : ~Scheduler_GR() = default; 26 : virtual void schedule() override; 27 : }; 28 : } // namespace sched 29 : } // namespace spu 30 : 31 : #endif // SCHEDULER_GR_HPP__