Review Board 2.0.15


stats: Add smartvalue statistics.

Review Request #1060 - Created Feb. 22, 2012 and discarded - Latest diff uploaded

Information
Ali Saidi
gem5
default
Reviewers
Default
stats: Add smartvalue statistics.

Smartvalues are a class of statistics that have the following properties:

They appear similar to other statistics; though currently only a scalar
equivalent has been implemented. As with a scalar stat the base smartvalue
implements/overrides the common operators ++, ++(int), inc(int) etc. As such
they are as simple to scatter about the code base as statistics.

SmartValues are added to a map on an owning SimObject. With access to the
SimObject the smartvalue can be retrieved by name.

Other classes can register as a smartvalue listener to hear a given (n-th)
increment (e.g 1, 1000, 10^6). The smartvalue maintains an ordered set of
attached listeners. Registering as a listener allows other simulation objects
to recieve the value of the smartvalue asynchronously; their initial usage
scenario will be a performance monitoring unit. We do not want to have to tick
the PMU every cycle in order to capture overflow events in PMU registers.