Go to the documentation of this file.
40 #include "params/StackDistProbe.hh"
45 lineSize(
p->line_size),
46 disableLinearHists(
p->disable_linear_hists),
47 disableLogHists(
p->disable_log_hists),
50 fatal_if(
p->system->cacheLineSize() >
p->line_size,
51 "The stack distance probe must use a cache line size that is "
52 "larger or equal to the system's cahce line size.");
60 const StackDistProbeParams *
p(
61 dynamic_cast<const StackDistProbeParams *
>(
params()));
64 using namespace Stats;
67 .
init(
p->linear_hist_bins)
69 .
desc(
"Reads linear distribution")
73 .
init(
p->log_hist_bins)
75 .
desc(
"Reads logarithmic distribution")
79 .
init(
p->linear_hist_bins)
81 .
desc(
"Writes linear distribution")
85 .
init(
p->log_hist_bins)
87 .
desc(
"Writes logarithmic distribution")
92 .
desc(
"Number of requests with infinite stack distance")
135 StackDistProbeParams::create()
StackDistProbe(StackDistProbeParams *params)
virtual void regStats()
Callback to set stat parameters.
T roundDown(const T &val, const U &align)
This function is used to align addresses in memory.
void regStats() override
Callback to set stat parameters.
const bool disableLogHists
Stats::Histogram readLinearHist
std::enable_if< std::is_integral< T >::value, int >::type floorLog2(T x)
Derived & flags(Flags _flags)
Set the flags and marks this stat to print at the end of simulation.
Stats::SparseHistogram readLogHist
std::pair< uint64_t, bool > calcStackDistAndUpdate(const Addr r_address, bool addNewNode=true)
Process the given address:
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Derived & name(const std::string &name)
Set the name and marks this stat to print at the end of simulation.
const Params * params() const
const FlagsType nozero
Don't print if this is zero.
Stats::Histogram writeLinearHist
static constexpr uint64_t Infinity
A convenient way of refering to infinity.
virtual const std::string name() const
void sample(const U &v, int n=1)
Add a value to the distribtion n times.
const bool disableLinearHists
const FlagsType pdf
Print the percent of the total that this entry represents.
void sample(const U &v, int n=1)
Add a value to the distribtion n times.
SparseHistogram & init(size_type size)
Set the parameters of this histogram.
Histogram & init(size_type size)
Set the parameters of this histogram.
void handleRequest(const ProbePoints::PacketInfo &pkt_info) override
Callback to analyse intercepted Packets.
#define fatal_if(cond,...)
Conditional fatal macro that checks the supplied condition and only causes a fatal error if the condi...
Derived & desc(const std::string &_desc)
Set the description and marks this stat to print at the end of simulation.
A struct to hold on to the essential fields from a packet, so that the packet and underlying request ...
Stats::SparseHistogram writeLogHist
Base class for memory system probes accepting Packet instances.
Generated on Wed Sep 30 2020 14:02:13 for gem5 by doxygen 1.8.17