#include <ReuseDistance.hpp>
Public Member Functions | |
ReuseStats (uint64_t idx, uint64_t bin, uint64_t num, uint64_t inv) | |
~ReuseStats () | |
void | Update (uint64_t dist) |
void | Miss () |
virtual uint64_t | GetMissCount () |
virtual void | Print (std::ostream &f, bool annotate=false) |
void | GetSortedDistances (std::vector< uint64_t > &dists) |
uint64_t | GetMaximumDistance () |
uint64_t | CountDistance (uint64_t dist) |
uint64_t | GetAccessCount () |
Static Public Member Functions | |
static void | PrintFormat (std::ostream &f) |
ReuseStats holds count of observed reuse distances.
Definition at line 270 of file ReuseDistance.hpp.
ReuseStats::ReuseStats | ( | uint64_t | idx, | |
uint64_t | bin, | |||
uint64_t | num, | |||
uint64_t | inv | |||
) | [inline] |
Contructs a ReuseStats object.
idx | The unique id for this ReuseStats | |
bin | Stop collecting individual bins above this value | |
num | Any value above this is considered a miss | |
inv | The value which represents a miss |
Definition at line 292 of file ReuseDistance.hpp.
ReuseStats::~ReuseStats | ( | ) | [inline] |
Destroys a ReuseStats object.
Definition at line 298 of file ReuseDistance.hpp.
uint64_t ReuseStats::CountDistance | ( | uint64_t | dist | ) |
Count the number of times some distance has been observed.
dist | The distance to count. |
Definition at line 324 of file ReuseDistance.cpp.
uint64_t ReuseStats::GetAccessCount | ( | ) |
Count the total number of distances observed.
Definition at line 304 of file ReuseDistance.cpp.
uint64_t ReuseStats::GetMaximumDistance | ( | ) |
Get the maximum distance observed.
Definition at line 308 of file ReuseDistance.cpp.
uint64_t ReuseStats::GetMissCount | ( | ) | [virtual] |
Get the number of misses. This is equal to the number of times Update(ReuseDistance::Infinity) is called.
Definition at line 78 of file ReuseDistance.cpp.
void ReuseStats::GetSortedDistances | ( | std::vector< uint64_t > & | dists | ) |
Get a std::vector containing the distances observed, sorted in ascending order.
dists | The vector which will hold the sorted distance values. It is an error for dists to be passed in non-empty (that is, dists.size() == 0 is enforced). |
void ReuseStats::Miss | ( | ) |
Increment the number of misses. That is, addresses which were not found inside the active address window. This is equivalent Update(0), but is faster.
virtual void ReuseStats::Print | ( | std::ostream & | f, | |
bool | annotate = false | |||
) | [virtual] |
Print a summary of the current reuse distances and counts for some id.
f | The stream to receive the output. | |
annotate | Also print annotations describing the meaning of output fields, preceded by a '#'. |
static void ReuseStats::PrintFormat | ( | std::ostream & | f | ) | [static] |
Print information about the output format of ReuseStats
f | The stream to receive the output. |
void ReuseStats::Update | ( | uint64_t | dist | ) |
Increment the counter for some distance.
dist | A reuse distance observed in the memory address stream. |
Definition at line 319 of file ReuseDistance.cpp.