gem5 v24.0.0.0
|
#include <Profiler.hh>
Classes | |
struct | ProfilerStats |
Public Member Functions | |
Profiler (const RubySystemParams ¶ms, RubySystem *rs) | |
~Profiler () | |
void | wakeup () |
void | regStats () |
void | collateStats () |
AddressProfiler * | getAddressProfiler () |
AddressProfiler * | getInstructionProfiler () |
void | addAddressTraceSample (const RubyRequest &msg, NodeID id) |
bool | getHotLines () const |
bool | getAllInstructions () const |
Public Attributes | |
RubySystem * | m_ruby_system |
ProfilerStats | rubyProfilerStats |
Private Member Functions | |
Profiler (const Profiler &obj) | |
Profiler & | operator= (const Profiler &obj) |
Private Attributes | |
AddressProfiler * | m_address_profiler_ptr |
AddressProfiler * | m_inst_profiler_ptr |
const bool | m_hot_lines |
const bool | m_all_instructions |
const uint32_t | m_num_vnets |
Definition at line 71 of file Profiler.hh.
gem5::ruby::Profiler::Profiler | ( | const RubySystemParams & | params, |
RubySystem * | rs ) |
Definition at line 89 of file Profiler.cc.
References m_address_profiler_ptr, m_all_instructions, m_hot_lines, m_inst_profiler_ptr, gem5::MipsISA::p, gem5::ruby::AddressProfiler::setAllInstructions(), and gem5::ruby::AddressProfiler::setHotLines().
gem5::ruby::Profiler::~Profiler | ( | ) |
Definition at line 106 of file Profiler.cc.
|
private |
void gem5::ruby::Profiler::addAddressTraceSample | ( | const RubyRequest & | msg, |
NodeID | id ) |
Definition at line 572 of file Profiler.cc.
References gem5::ruby::RubyRequest::getAccessMode(), gem5::ruby::RubyRequest::getLineAddress(), gem5::ruby::RubyRequest::getProgramCounter(), gem5::ruby::RubyRequest::getType(), and m_address_profiler_ptr.
void gem5::ruby::Profiler::collateStats | ( | ) |
Definition at line 371 of file Profiler.cc.
References gem5::statistics::DistBase< Derived, Stor >::add(), gem5::ruby::AddressProfiler::collateStats(), gem5::ruby::Profiler::ProfilerStats::delayHistogram, gem5::ruby::Profiler::ProfilerStats::delayVCHistogram, gem5::ruby::AbstractController::getCPUSequencer(), gem5::ruby::AbstractController::getDelayHist(), gem5::ruby::AbstractController::getDelayVCHist(), gem5::ruby::GPUCoalescer::getFirstResponseToCompletionDelayHist(), gem5::ruby::GPUCoalescer::getForwardRequestToFirstResponseHist(), gem5::ruby::AbstractController::getGPUCoalescer(), gem5::ruby::Sequencer::getHitLatencyHist(), gem5::ruby::Sequencer::getHitMachLatencyHist(), gem5::ruby::Sequencer::getHitTypeLatencyHist(), gem5::ruby::Sequencer::getHitTypeMachLatencyHist(), gem5::ruby::Sequencer::getIncompleteTimes(), gem5::ruby::GPUCoalescer::getInitialToForwardDelayHist(), gem5::ruby::GPUCoalescer::getIssueToInitialDelayHist(), gem5::ruby::Sequencer::getIssueToInitialDelayHist(), gem5::ruby::GPUCoalescer::getLatencyHist(), gem5::ruby::Sequencer::getLatencyHist(), gem5::ruby::GPUCoalescer::getMissLatencyHist(), gem5::ruby::Sequencer::getMissLatencyHist(), gem5::ruby::GPUCoalescer::getMissMachLatencyHist(), gem5::ruby::Sequencer::getMissMachLatencyHist(), gem5::ruby::GPUCoalescer::getMissTypeLatencyHist(), gem5::ruby::Sequencer::getMissTypeLatencyHist(), gem5::ruby::GPUCoalescer::getMissTypeMachLatencyHist(), gem5::ruby::Sequencer::getMissTypeMachLatencyHist(), gem5::ruby::GPUCoalescer::getOutstandReqHist(), gem5::ruby::Sequencer::getOutstandReqHist(), gem5::ruby::GPUCoalescer::getTypeLatencyHist(), gem5::ruby::Sequencer::getTypeLatencyHist(), gem5::ArmISA::i, gem5::MipsISA::k, gem5::ruby::RubySystem::m_abstract_controls, m_address_profiler_ptr, m_all_instructions, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_FirstResponseToCompletionDelayHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_FirstResponseToCompletionDelayHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_ForwardToFirstResponseDelayHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_ForwardToFirstResponseDelayHistSeqr, gem5::ruby::Profiler::ProfilerStats::m_hitLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_hitMachLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats::m_hitTypeLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeMachineTypeStats::m_hitTypeMachLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_IncompleteTimesSeqr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_InitialToForwardDelayHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_InitialToForwardDelayHistSeqr, m_inst_profiler_ptr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_IssueToInitialDelayHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_IssueToInitialDelayHistSeqr, gem5::ruby::Profiler::ProfilerStats::m_latencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::m_latencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::m_missLatencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::m_missLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_missMachLatencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats::m_missMachLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats::m_missTypeLatencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats::m_missTypeLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeMachineTypeStats::m_missTypeMachLatencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeMachineTypeStats::m_missTypeMachLatencyHistSeqr, m_num_vnets, gem5::ruby::Profiler::ProfilerStats::m_outstandReqHistCoalsr, gem5::ruby::Profiler::ProfilerStats::m_outstandReqHistSeqr, m_ruby_system, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats::m_typeLatencyHistCoalsr, gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats::m_typeLatencyHistSeqr, gem5::ruby::Profiler::ProfilerStats::perMachineTypeStats, gem5::ruby::Profiler::ProfilerStats::perRequestTypeMachineTypeStats, gem5::ruby::Profiler::ProfilerStats::perRequestTypeStats, and rubyProfilerStats.
Referenced by gem5::ruby::RubySystem::collateStats().
|
inline |
Definition at line 83 of file Profiler.hh.
References m_address_profiler_ptr.
|
inline |
Definition at line 90 of file Profiler.hh.
References m_all_instructions.
Referenced by gem5::ruby::printSorted().
|
inline |
Definition at line 89 of file Profiler.hh.
References m_hot_lines.
|
inline |
Definition at line 84 of file Profiler.hh.
References m_inst_profiler_ptr.
void gem5::ruby::Profiler::regStats | ( | ) |
void gem5::ruby::Profiler::wakeup | ( | ) |
|
private |
Definition at line 97 of file Profiler.hh.
Referenced by addAddressTraceSample(), collateStats(), getAddressProfiler(), and Profiler().
|
private |
Definition at line 194 of file Profiler.hh.
Referenced by collateStats(), getAllInstructions(), and Profiler().
|
private |
Definition at line 193 of file Profiler.hh.
Referenced by getHotLines(), and Profiler().
|
private |
Definition at line 98 of file Profiler.hh.
Referenced by collateStats(), getInstructionProfiler(), and Profiler().
|
private |
Definition at line 195 of file Profiler.hh.
Referenced by collateStats(), and gem5::ruby::Profiler::ProfilerStats::ProfilerStats().
RubySystem* gem5::ruby::Profiler::m_ruby_system |
Definition at line 77 of file Profiler.hh.
Referenced by collateStats().
ProfilerStats gem5::ruby::Profiler::rubyProfilerStats |
Definition at line 199 of file Profiler.hh.
Referenced by collateStats().