35 #ifndef __MEM_RUBY_RECORDER_CACHERECORDER_HH__
36 #define __MEM_RUBY_RECORDER_CACHERECORDER_HH__
41 #include "mem/protocol/RubyRequestType.hh"
63 void print(std::ostream& out)
const;
73 uint64_t uncompressed_trace_size,
75 uint64_t block_size_bytes);
129 #endif // __MEM_RUBY_RECORDER_CACHERECORDER_HH__
void enqueueNextFetchRequest()
Function for fetching warming up the memory and the caches.
void print(std::ostream &out) const
uint64_t aggregateRecords(uint8_t **data, uint64_t size)
void addRecord(int cntrl, Addr data_addr, Addr pc_addr, RubyRequestType type, Tick time, DataBlock &data)
std::vector< TraceRecord * > m_records
Class for recording cache contents.
std::vector< Sequencer * > m_seq_map
void enqueueNextFlushRequest()
Function for flushing the memory contents of the caches to the main memory.
uint64_t m_records_flushed
uint64_t Tick
Tick count type.
uint64_t m_block_size_bytes
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,16,32,64}_t.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
bool compareTraceRecords(const TraceRecord *n1, const TraceRecord *n2)
uint8_t * m_uncompressed_trace
std::ostream & operator<<(std::ostream &out, const TraceRecord &obj)
uint64_t m_uncompressed_trace_size
CacheRecorder & operator=(const CacheRecorder &obj)