gem5  v21.0.1.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Attributes | List of all members
Scheduler Class Reference

#include <scheduler.hh>

Public Member Functions

 Scheduler (const ComputeUnitParams &params)
 
WavefrontchooseWave ()
 
void bindList (std::vector< Wavefront * > *sched_list)
 

Private Attributes

SchedulingPolicyschedPolicy
 Scheduling policy. More...
 
std::vector< Wavefront * > * scheduleList
 

Detailed Description

Definition at line 43 of file scheduler.hh.

Constructor & Destructor Documentation

◆ Scheduler()

Scheduler::Scheduler ( const ComputeUnitParams &  params)

Definition at line 40 of file scheduler.cc.

References fatal, MipsISA::p, and schedPolicy.

Member Function Documentation

◆ bindList()

void Scheduler::bindList ( std::vector< Wavefront * > *  sched_list)

Definition at line 58 of file scheduler.cc.

References scheduleList.

Referenced by FetchUnit::init().

◆ chooseWave()

Wavefront * Scheduler::chooseWave ( )

Definition at line 52 of file scheduler.cc.

References SchedulingPolicy::chooseWave(), schedPolicy, and scheduleList.

Referenced by FetchUnit::exec().

Member Data Documentation

◆ schedPolicy

SchedulingPolicy* Scheduler::schedPolicy
private

Scheduling policy.

Currently the model can support oldest-first or round-robin scheduling.

Definition at line 55 of file scheduler.hh.

Referenced by chooseWave(), and Scheduler().

◆ scheduleList

std::vector<Wavefront*>* Scheduler::scheduleList
private

Definition at line 56 of file scheduler.hh.

Referenced by bindList(), and chooseWave().


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

Generated on Tue Jun 22 2021 15:28:43 for gem5 by doxygen 1.8.17