45#ifndef __MEM_RUBY_PROFILER_PROFILER_HH__
46#define __MEM_RUBY_PROFILER_PROFILER_HH__
56#include "mem/ruby/protocol/AccessType.hh"
57#include "mem/ruby/protocol/PrefetchBit.hh"
58#include "mem/ruby/protocol/RubyAccessMode.hh"
59#include "mem/ruby/protocol/RubyRequestType.hh"
60#include "params/RubySystem.hh"
Profiler(const Profiler &obj)
Profiler & operator=(const Profiler &obj)
AddressProfiler * m_inst_profiler_ptr
ProfilerStats rubyProfilerStats
const uint32_t m_num_vnets
AddressProfiler * getInstructionProfiler()
AddressProfiler * m_address_profiler_ptr
RubySystem * m_ruby_system
const bool m_all_instructions
void addAddressTraceSample(const RubyRequest &msg, NodeID id)
Profiler(const RubySystemParams ¶ms, RubySystem *rs)
bool getAllInstructions() const
AddressProfiler * getAddressProfiler()
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Declaration of Statistics objects.
std::vector< statistics::Histogram * > m_missMachLatencyHistCoalsr
std::vector< statistics::Histogram * > m_FirstResponseToCompletionDelayHistSeqr
std::vector< statistics::Histogram * > m_IssueToInitialDelayHistSeqr
Histograms for recording the breakdown of miss latency.
std::vector< statistics::Histogram * > m_ForwardToFirstResponseDelayHistCoalsr
std::vector< statistics::Scalar * > m_IncompleteTimesSeqr
std::vector< statistics::Histogram * > m_FirstResponseToCompletionDelayHistCoalsr
std::vector< statistics::Histogram * > m_InitialToForwardDelayHistSeqr
std::vector< statistics::Histogram * > m_ForwardToFirstResponseDelayHistSeqr
std::vector< statistics::Histogram * > m_InitialToForwardDelayHistCoalsr
std::vector< statistics::Histogram * > m_IssueToInitialDelayHistCoalsr
std::vector< statistics::Histogram * > m_hitMachLatencyHistSeqr
Histograms for profiling the latencies for requests that did not required external messages.
std::vector< statistics::Histogram * > m_missMachLatencyHistSeqr
Histograms for profiling the latencies for requests that required external messages.
PerMachineTypeStats(statistics::Group *parent)
PerRequestTypeMachineTypeStats(statistics::Group *parent)
std::vector< std::vector< statistics::Histogram * > > m_missTypeMachLatencyHistSeqr
Histograms for profiling the latencies for requests that required external messages.
std::vector< std::vector< statistics::Histogram * > > m_missTypeMachLatencyHistCoalsr
std::vector< std::vector< statistics::Histogram * > > m_hitTypeMachLatencyHistSeqr
Histograms for profiling the latencies for requests that did not required external messages.
std::vector< statistics::Histogram * > m_missTypeLatencyHistSeqr
std::vector< statistics::Histogram * > m_hitTypeLatencyHistSeqr
std::vector< statistics::Histogram * > m_typeLatencyHistSeqr
std::vector< statistics::Histogram * > m_typeLatencyHistCoalsr
std::vector< statistics::Histogram * > m_missTypeLatencyHistCoalsr
PerRequestTypeStats(statistics::Group *parent)
gem5::ruby::Profiler::ProfilerStats::PerRequestTypeStats perRequestTypeStats
gem5::ruby::Profiler::ProfilerStats::PerRequestTypeMachineTypeStats perRequestTypeMachineTypeStats
statistics::Histogram m_latencyHistSeqr
Histogram for holding latency profile of all requests.
statistics::Histogram m_missLatencyHistCoalsr
statistics::Histogram m_missLatencyHistSeqr
Histogram for holding latency profile of all requests that miss in the controller connected to this s...
statistics::Histogram m_outstandReqHistCoalsr
statistics::Histogram m_latencyHistCoalsr
std::vector< statistics::Histogram * > delayVCHistogram
gem5::ruby::Profiler::ProfilerStats::PerMachineTypeStats perMachineTypeStats
statistics::Histogram m_outstandReqHistSeqr
Histogram for number of outstanding requests per cycle.
ProfilerStats(statistics::Group *parent, Profiler *profiler)
statistics::Histogram m_hitLatencyHistSeqr
Histogram for holding latency profile of all requests that hit in the controller connected to this se...
statistics::Histogram delayHistogram