Please resolve this query. I dug deeper and realized MSHRQueue is not inherited from SimObject. So, it wouldn't support using various statistics macros and classes this easily. I have now successfully added the stats I'm interested in as part of the BaseCache class.
On Thu, Jan 18, 2024 at 7:31 PM Arth Shah <arth...@gmail.com> wrote: > Hi everyone, > > I'm attempting to add statistics to the Classic cache's mshr_queue. > There was no stats struct already so I tried to follow the steps in > Bootcamp to add one. > I see the following error though. Could you help? > > src/mem/cache/mshr_queue.cc:59:48: *error: no matching function for call > to* ‘gem5::MSHRQueue::MshrStats::MshrStats(gem5::MSHRQueue*)’ > stats(this), demandReserve(demand_reserve) > > > Here are the main set of changes. > > *mshr_queue.hh* > > class MSHRQueue : public Queue<MSHR> { > > ... > > struct MshrStats : public statistics::Group > { > MshrStats(statistics::Group *parent); > > /** Number of times an entry was inserted in MSHR. */ > statistics::Scalar mshrInserts; > > } stats; > ... > > } > > *mshr_queue.cc* > > ... > MSHRQueue::MSHRQueue(const std::string &_label, > int num_entries, int reserve, > int demand_reserve, std::string cache_name = "") > : Queue<MSHR>(_label, num_entries, reserve, cache_name + ".mshr_queue" > ), > stats(this), demandReserve(demand_reserve) > {} > > ... > MSHRQueue::MshrStats::MshrStats(statistics::Group *parent) > : statistics::Group(parent), > ADD_STAT(mshrInserts, statistics::units::Count::get(), > "Number of times an entry was inserted in MSHR") > {} > >
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org