I'm contemplating adding a less invasive method of gathering
micro-architectural statistics, such as counts of instruction types and
traces.
As far as I know they current way of doing this is to add to the regStats
methods within M5 modules, and add the types of stats to the headers.
This doesn't appear to be very flexible as code must be written into modules
and recompiled each time a new statistic is required.

I am curious to know if anyone has previously looked at exposing some state
through an interface, possibly the static_inst/dyn_inst? A user could then
attach a listening object to a port,
and snoop the static_inst/dyn_inst, updating external statistics depending
on the instruction type etc. Obviously this will slow down the simulation to
some extent when a statistics listener
is attached, but allows the flexibility to generate traces and statistics
very easily.

I appreciate that this approach also has limitations.

I'd appreciate any comments back from the m5-user community, if anyone can
see any obvious pitfalls to this approach please let me know.

Thanks,

Matt
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to