gem5
|
#include <exec_stage.hh>
Public Member Functions | |
ExecStage (const ComputeUnitParams *params) | |
~ExecStage () | |
void | init (ComputeUnit *cu) |
void | exec () |
std::string | name () |
void | regStats () |
Private Member Functions | |
void | collectStatistics (enum STAT_STATUS stage, int unitId) |
void | initStatistics () |
Private Attributes | |
ComputeUnit * | computeUnit |
uint32_t | numSIMDs |
uint32_t | numMemUnits |
std::vector< std::pair < Wavefront *, DISPATCH_STATUS > > * | dispatchList |
std::vector< bool > * | vectorAluInstAvail |
int * | glbMemInstAvail |
int * | shrMemInstAvail |
bool | lastTimeInstExecuted |
bool | thisTimeInstExecuted |
bool | instrExecuted |
Stats::Scalar | numTransActiveIdle |
Stats::Distribution | idleDur |
uint32_t | executionResourcesUsed |
uint64_t | idle_dur |
std::string | _name |
Definition at line 69 of file exec_stage.hh.
ExecStage::ExecStage | ( | const ComputeUnitParams * | params | ) |
Definition at line 41 of file exec_stage.cc.
References idle_dur, and numTransActiveIdle.
|
inline |
Definition at line 73 of file exec_stage.hh.
|
private |
Definition at line 65 of file exec_stage.cc.
References BusyExec, computeUnit, executionResourcesUsed, glbMemInstAvail, idle_dur, idleDur, IdleExec, instrExecuted, ComputeUnit::isGlbMem(), ComputeUnit::isShrMem(), ComputeUnit::isVecAlu(), lastTimeInstExecuted, numCyclesWithInstrIssued, numCyclesWithInstrTypeIssued, numCyclesWithNoInstrTypeIssued, numCyclesWithNoIssue, numTransActiveIdle, PostExec, Stats::DistBase< Derived, Stor >::sample(), shrMemInstAvail, spc, thisTimeInstExecuted, and vectorAluInstAvail.
Referenced by exec().
void ExecStage::exec | ( | ) |
Definition at line 128 of file exec_stage.cc.
References BusyExec, collectStatistics(), dispatchList, EMPTY, IdleExec, initStatistics(), numMemUnits, numSIMDs, and PostExec.
Referenced by ComputeUnit::exec().
void ExecStage::init | ( | ComputeUnit * | cu | ) |
Definition at line 53 of file exec_stage.cc.
References _name, computeUnit, dispatchList, ComputeUnit::dispatchList, glbMemInstAvail, ComputeUnit::glbMemInstAvail, idle_dur, SimObject::name(), shrMemInstAvail, ComputeUnit::shrMemInstAvail, vectorAluInstAvail, and ComputeUnit::vectorAluInstAvail.
Referenced by ComputeUnit::init().
|
private |
Definition at line 120 of file exec_stage.cc.
References executionResourcesUsed, instrExecuted, and thisTimeInstExecuted.
Referenced by exec().
|
inline |
void ExecStage::regStats | ( | ) |
Definition at line 152 of file exec_stage.cc.
References csprintf(), Stats::DataWrap< Derived, InfoProxyType >::desc(), ArmISA::i, idleDur, Stats::VectorBase< Derived, Stor >::init(), Stats::Distribution::init(), name(), Stats::DataWrap< Derived, InfoProxyType >::name(), numCyclesWithInstrIssued, numCyclesWithInstrTypeIssued, numCyclesWithNoInstrTypeIssued, numCyclesWithNoIssue, numMemUnits, numSIMDs, numTransActiveIdle, spc, and Stats::DataWrapVec< Derived, InfoProxyType >::subname().
Referenced by ComputeUnit::regStats().
|
private |
Definition at line 126 of file exec_stage.hh.
|
private |
Definition at line 96 of file exec_stage.hh.
Referenced by collectStatistics(), and init().
|
private |
Definition at line 112 of file exec_stage.hh.
|
private |
Definition at line 124 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().
|
private |
Definition at line 117 of file exec_stage.hh.
Referenced by collectStatistics(), and init().
|
private |
Definition at line 125 of file exec_stage.hh.
Referenced by collectStatistics(), ExecStage(), and init().
|
private |
Definition at line 123 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 121 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().
|
private |
Definition at line 119 of file exec_stage.hh.
Referenced by collectStatistics().
Stats::Scalar ExecStage::numCyclesWithInstrIssued |
Definition at line 82 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
Stats::Vector ExecStage::numCyclesWithInstrTypeIssued |
Definition at line 85 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
Stats::Vector ExecStage::numCyclesWithNoInstrTypeIssued |
Definition at line 89 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
Stats::Scalar ExecStage::numCyclesWithNoIssue |
Definition at line 80 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 101 of file exec_stage.hh.
Referenced by exec(), and regStats().
|
private |
Definition at line 97 of file exec_stage.hh.
Referenced by exec(), and regStats().
|
private |
Definition at line 122 of file exec_stage.hh.
Referenced by collectStatistics(), ExecStage(), and regStats().
|
private |
Definition at line 118 of file exec_stage.hh.
Referenced by collectStatistics(), and init().
Stats::Distribution ExecStage::spc |
Definition at line 91 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 120 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().
|
private |
Definition at line 116 of file exec_stage.hh.
Referenced by collectStatistics(), and init().