gem5  v21.1.0.1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Attributes | List of all members
gem5::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 46 of file scheduler.hh.

Constructor & Destructor Documentation

◆ Scheduler()

gem5::Scheduler::Scheduler ( const ComputeUnitParams &  params)

Definition at line 43 of file scheduler.cc.

References fatal, gem5::MipsISA::p, and schedPolicy.

Member Function Documentation

◆ bindList()

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

Definition at line 61 of file scheduler.cc.

References scheduleList.

Referenced by gem5::FetchUnit::init().

◆ chooseWave()

Wavefront * gem5::Scheduler::chooseWave ( )

Definition at line 55 of file scheduler.cc.

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

Referenced by gem5::FetchUnit::exec().

Member Data Documentation

◆ schedPolicy

SchedulingPolicy* gem5::Scheduler::schedPolicy
private

Scheduling policy.

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

Definition at line 58 of file scheduler.hh.

Referenced by chooseWave(), and Scheduler().

◆ scheduleList

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

Definition at line 59 of file scheduler.hh.

Referenced by bindList(), and chooseWave().


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

Generated on Tue Sep 7 2021 14:54:04 for gem5 by doxygen 1.8.17