stats: Add support for partial stat dumps
authorAndreas Sandberg <andreas.sandberg@arm.com>
Fri, 28 Jun 2019 11:17:18 +0000 (12:17 +0100)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Thu, 29 Aug 2019 09:01:38 +0000 (09:01 +0000)
commitc8f06b862c773f03a252b52380799168695b8713
tree35757c95b2ea8ca642fb37ed5c5d47e3d8596e38
parent6f38428abbe106d63318dd86bfa82a03b6b368ee
stats: Add support for partial stat dumps

Add support for partial stat dumps by passing an optional 'root'
keyword argument to m5.stats.dump(). Specifying root slightly changes
the semantics of the dump command. For legacy reasons, gem5 only
allows one stat dump per tick. This is likely a limitation introduced
as a hack to prevent automatic dumping at the end of simulation from
interfering with explicit dumping from a simulation script. This
restriction does not apply when specifying a root. However, these stat
dumps will still prevent an additional stat dump in the same tick with
an unspecified root.

N.B.: This new API /only/ works for new-style stats that have an
explicit hierarchy. Legacy stats will not be dumped if a root is
specified.

Change-Id: Idc8ff448b9f70a796427b4a5231e7371485130b4
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/19369
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/python/m5/SimObject.py
src/python/m5/stats/__init__.py