gem5 v24.0.0.0

Public Member Functions  
IQStats (CPU *cpu, const unsigned &total_width)  
Public Member Functions inherited from gem5::statistics::Group  
Group (Group *parent, const char *name=nullptr)  
Construct a new statistics group.  
virtual  ~Group () 
virtual void  regStats () 
Callback to set stat parameters.  
virtual void  resetStats () 
Callback to reset stats.  
virtual void  preDumpStats () 
Callback before stats are dumped.  
void  addStat (statistics::Info *info) 
Register a stat with this group.  
const std::map< std::string, Group * > &  getStatGroups () const 
Get all child groups associated with this object.  
const std::vector< Info * > &  getStats () const 
Get all stats associated with this object.  
void  addStatGroup (const char *name, Group *block) 
Add a stat block as a child of this block.  
const Info *  resolveStat (std::string name) const 
Resolve a stat by its name within this group.  
void  mergeStatGroup (Group *block) 
Merge the contents (stats & children) of a block to this block.  
Group ()=delete  
Group (const Group &)=delete  
Group &  operator= (const Group &)=delete 
Public Attributes  
statistics::Scalar  instsAdded 
Stat for number of instructions added.  
statistics::Scalar  nonSpecInstsAdded 
Stat for number of nonspeculative instructions added.  
statistics::Scalar  instsIssued 
statistics::Scalar  intInstsIssued 
Stat for number of integer instructions issued.  
statistics::Scalar  floatInstsIssued 
Stat for number of floating point instructions issued.  
statistics::Scalar  branchInstsIssued 
Stat for number of branch instructions issued.  
statistics::Scalar  memInstsIssued 
Stat for number of memory instructions issued.  
statistics::Scalar  miscInstsIssued 
Stat for number of miscellaneous instructions issued.  
statistics::Scalar  squashedInstsIssued 
Stat for number of squashed instructions that were ready to issue.  
statistics::Scalar  squashedInstsExamined 
Stat for number of squashed instructions examined when squashing.  
statistics::Scalar  squashedOperandsExamined 
Stat for number of squashed instruction operands examined when squashing.  
statistics::Scalar  squashedNonSpecRemoved 
Stat for number of nonspeculative instructions removed due to a squash.  
statistics::Distribution  numIssuedDist 
Distribution of number of instructions in the queue.  
statistics::Vector  statFuBusy 
Distribution of the cycles it takes to issue an instruction.  
statistics::Vector2d  statIssuedInstType 
Stat for total number issued for each instruction type.  
statistics::Formula  issueRate 
Number of instructions issued per cycle.  
statistics::Vector  fuBusy 
Number of times the FU was busy.  
statistics::Formula  fuBusyRate 
Number of times the FU was busy per instruction issued.  
Definition at line 483 of file inst_queue.hh.
gem5::o3::InstructionQueue::IQStats::IQStats  (  CPU *  cpu, 
const unsigned &  total_width ) 
Definition at line 180 of file inst_queue.cc.
References branchInstsIssued, gem5::o3::InstructionQueue::cpu, gem5::statistics::dist, gem5::statistics::DataWrap< Derived, InfoProxyType >::flags(), floatInstsIssued, fuBusy, fuBusyRate, gem5::ArmISA::i, gem5::statistics::Distribution::init(), gem5::statistics::Vector2dBase< Derived, Stor >::init(), gem5::statistics::VectorBase< Derived, Stor >::init(), instsAdded, instsIssued, intInstsIssued, issueRate, memInstsIssued, miscInstsIssued, nonSpecInstsAdded, gem5::Num_OpClasses, numIssuedDist, gem5::BaseCPU::numThreads, gem5::statistics::pdf, gem5::statistics::DataWrap< Derived, InfoProxyType >::prereq(), squashedInstsExamined, squashedInstsIssued, squashedNonSpecRemoved, squashedOperandsExamined, statFuBusy, statIssuedInstType, gem5::statistics::DataWrapVec< Derived, InfoProxyType >::subname(), gem5::statistics::total, and gem5::statistics::DataWrapVec2d< Derived, InfoProxyType >::ysubnames().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::branchInstsIssued 
Stat for number of branch instructions issued.
Definition at line 497 of file inst_queue.hh.
Referenced by IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::floatInstsIssued 
Stat for number of floating point instructions issued.
Definition at line 495 of file inst_queue.hh.
Referenced by IQStats().
statistics::Vector gem5::o3::InstructionQueue::IQStats::fuBusy 
Number of times the FU was busy.
Definition at line 541 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().
statistics::Formula gem5::o3::InstructionQueue::IQStats::fuBusyRate 
Number of times the FU was busy per instruction issued.
Definition at line 543 of file inst_queue.hh.
Referenced by IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::instsAdded 
Stat for number of instructions added.
Definition at line 487 of file inst_queue.hh.
Referenced by gem5::o3::InstructionQueue::insert(), and IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::instsIssued 
Definition at line 491 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::intInstsIssued 
Stat for number of integer instructions issued.
Definition at line 493 of file inst_queue.hh.
Referenced by IQStats().
statistics::Formula gem5::o3::InstructionQueue::IQStats::issueRate 
Number of instructions issued per cycle.
Definition at line 538 of file inst_queue.hh.
Referenced by IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::memInstsIssued 
Stat for number of memory instructions issued.
Definition at line 499 of file inst_queue.hh.
Referenced by IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::miscInstsIssued 
Stat for number of miscellaneous instructions issued.
Definition at line 501 of file inst_queue.hh.
Referenced by IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::nonSpecInstsAdded 
Stat for number of nonspeculative instructions added.
Definition at line 489 of file inst_queue.hh.
Referenced by gem5::o3::InstructionQueue::insertNonSpec(), and IQStats().
statistics::Distribution gem5::o3::InstructionQueue::IQStats::numIssuedDist 
Distribution of number of instructions in the queue.
Distribution of the number of instructions issued.
Definition at line 523 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::squashedInstsExamined 
Stat for number of squashed instructions examined when squashing.
Definition at line 507 of file inst_queue.hh.
Referenced by gem5::o3::InstructionQueue::doSquash(), and IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::squashedInstsIssued 
Stat for number of squashed instructions that were ready to issue.
Definition at line 504 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::squashedNonSpecRemoved 
Stat for number of nonspeculative instructions removed due to a squash.
Definition at line 515 of file inst_queue.hh.
Referenced by gem5::o3::InstructionQueue::doSquash(), and IQStats().
statistics::Scalar gem5::o3::InstructionQueue::IQStats::squashedOperandsExamined 
Stat for number of squashed instruction operands examined when squashing.
Definition at line 511 of file inst_queue.hh.
Referenced by gem5::o3::InstructionQueue::doSquash(), and IQStats().
statistics::Vector gem5::o3::InstructionQueue::IQStats::statFuBusy 
Distribution of the cycles it takes to issue an instruction.
Number of times an instruction could not be issued because a FU was busy.
Definition at line 532 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().
statistics::Vector2d gem5::o3::InstructionQueue::IQStats::statIssuedInstType 
Stat for total number issued for each instruction type.
Definition at line 535 of file inst_queue.hh.
Referenced by IQStats(), and gem5::o3::InstructionQueue::scheduleReadyInsts().