Go to the documentation of this file.
35 #ifndef __MEM_RUBY_SYSTEM_CACHERECORDER_HH__
36 #define __MEM_RUBY_SYSTEM_CACHERECORDER_HH__
44 #include "mem/ruby/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_SYSTEM_CACHERECORDER_HH__
uint64_t aggregateRecords(uint8_t **data, uint64_t size)
CacheRecorder & operator=(const CacheRecorder &obj)
void enqueueNextFetchRequest()
Function for fetching warming up the memory and the caches.
void enqueueNextFlushRequest()
Function for flushing the memory contents of the caches to the main memory.
uint64_t Tick
Tick count type.
uint8_t * m_uncompressed_trace
void addRecord(int cntrl, Addr data_addr, Addr pc_addr, RubyRequestType type, Tick time, DataBlock &data)
uint64_t m_block_size_bytes
uint64_t m_uncompressed_trace_size
bool compareTraceRecords(const TraceRecord *n1, const TraceRecord *n2)
std::vector< TraceRecord * > m_records
uint64_t m_records_flushed
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
std::vector< Sequencer * > m_seq_map
void print(std::ostream &out) const
Class for recording cache contents.
std::ostream & operator<<(std::ostream &out, const TraceRecord &obj)
Generated on Wed Sep 30 2020 14:02:13 for gem5 by doxygen 1.8.17