|
gem5
v20.1.0.5
|
#include <exec_stage.hh>
Public Member Functions | |
| ExecStage (const ComputeUnitParams *p, ComputeUnit &cu, ScheduleToExecute &from_schedule) | |
| ~ExecStage () | |
| void | init () |
| void | exec () |
| std::string | dispStatusToStr (int j) |
| void | dumpDispList () |
| const std::string & | name () const |
| void | regStats () |
Private Member Functions | |
| void | collectStatistics (enum STAT_STATUS stage, int unitId) |
| void | initStatistics () |
Private Attributes | |
| ComputeUnit & | computeUnit |
| ScheduleToExecute & | fromSchedule |
| bool | lastTimeInstExecuted |
| bool | thisTimeInstExecuted |
| bool | instrExecuted |
| Stats::Scalar | numTransActiveIdle |
| Stats::Distribution | idleDur |
| int | executionResourcesUsed |
| uint64_t | idle_dur |
| const std::string | _name |
Definition at line 71 of file exec_stage.hh.
| ExecStage::ExecStage | ( | const ComputeUnitParams * | p, |
| ComputeUnit & | cu, | ||
| ScheduleToExecute & | from_schedule | ||
| ) |
Definition at line 44 of file exec_stage.cc.
References idle_dur, and numTransActiveIdle.
|
inline |
Definition at line 76 of file exec_stage.hh.
|
private |
Definition at line 63 of file exec_stage.cc.
References BusyExec, executionResourcesUsed, idle_dur, idleDur, IdleExec, instrExecuted, lastTimeInstExecuted, numCyclesWithInstrIssued, numCyclesWithInstrTypeIssued, numCyclesWithNoInstrTypeIssued, numCyclesWithNoIssue, numTransActiveIdle, PostExec, Stats::DistBase< Derived, Stor >::sample(), spc, and thisTimeInstExecuted.
Referenced by exec().
| std::string ExecStage::dispStatusToStr | ( | int | j | ) |
Definition at line 109 of file exec_stage.cc.
References EMPTY, EXREADY, ArmISA::i, ArmISA::s, and SKIP.
Referenced by dumpDispList().
| void ExecStage::dumpDispList | ( | ) |
Definition at line 127 of file exec_stage.cc.
References computeUnit, ScheduleToExecute::dispatchStatus(), dispStatusToStr(), DPRINTF, EMPTY, fromSchedule, ArmISA::i, Wavefront::instructionBuffer, ComputeUnit::numExeUnits(), ScheduleToExecute::readyInst(), ArmISA::s, Wavefront::simdId, ArmISA::ss, and Wavefront::wfDynId.
Referenced by exec().
| void ExecStage::exec | ( | ) |
Definition at line 150 of file exec_stage.cc.
References BusyExec, collectStatistics(), computeUnit, ScheduleToExecute::dispatchStatus(), ScheduleToExecute::dispatchTransition(), DPRINTF, dumpDispList(), EMPTY, Wavefront::exec(), EXREADY, Wavefront::freeResources(), fromSchedule, IdleExec, initStatistics(), ComputeUnit::numExeUnits(), panic, PostExec, ScheduleToExecute::readyInst(), ArmISA::s, ComputeUnit::scheduleStage, Wavefront::simdId, SKIP, and Wavefront::wfDynId.
Referenced by ComputeUnit::exec().
| void ExecStage::init | ( | ) |
Definition at line 57 of file exec_stage.cc.
References idle_dur.
Referenced by ComputeUnit::init().
|
private |
Definition at line 101 of file exec_stage.cc.
References executionResourcesUsed, instrExecuted, and thisTimeInstExecuted.
Referenced by exec().
|
inline |
| void ExecStage::regStats | ( | ) |
Definition at line 200 of file exec_stage.cc.
References ArmISA::c, computeUnit, 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, ComputeUnit::numExeUnits(), ComputeUnit::numScalarALUs, numTransActiveIdle, ComputeUnit::numVectorALUs, ArmISA::s, spc, Stats::DataWrapVec< Derived, InfoProxyType >::subname(), and sc_dt::to_string().
Referenced by ComputeUnit::regStats().
|
private |
Definition at line 112 of file exec_stage.hh.
Referenced by name().
|
private |
Definition at line 102 of file exec_stage.hh.
Referenced by dumpDispList(), exec(), and regStats().
|
private |
Definition at line 110 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().
|
private |
Definition at line 103 of file exec_stage.hh.
Referenced by dumpDispList(), and exec().
|
private |
Definition at line 111 of file exec_stage.hh.
Referenced by collectStatistics(), ExecStage(), and init().
|
private |
Definition at line 109 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 107 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().
|
private |
Definition at line 105 of file exec_stage.hh.
Referenced by collectStatistics().
| Stats::Scalar ExecStage::numCyclesWithInstrIssued |
Definition at line 88 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
| Stats::Vector ExecStage::numCyclesWithInstrTypeIssued |
Definition at line 91 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
| Stats::Vector ExecStage::numCyclesWithNoInstrTypeIssued |
Definition at line 95 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
| Stats::Scalar ExecStage::numCyclesWithNoIssue |
Definition at line 86 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 108 of file exec_stage.hh.
Referenced by collectStatistics(), ExecStage(), and regStats().
| Stats::Distribution ExecStage::spc |
Definition at line 97 of file exec_stage.hh.
Referenced by collectStatistics(), and regStats().
|
private |
Definition at line 106 of file exec_stage.hh.
Referenced by collectStatistics(), and initStatistics().