Deterministic Performance Counter Work
I have been researching the inherent determinism (and overcount) of hardware
Currently this work has mostly been about finding deterministic
events on x86_64 machines, as well as finding sources of non-determinism
Here is an ongoing paper with the most recent results:
A summary of my findings as of April 2013 can be found in
the following ISPASS 2013 paper:
- V.M. Weaver, D. Terpstra, S. Moore.
"Non-Determinism and Overcount on Modern Hardware
Performance Counter Implementations",
IEEE International Symposium on Performance Analysis of
Systems and Software (ISPASS 2013), Austin, Texas, April 2013.
- The IEEE would prefer you obtain this paper through their
IEEE Explore interface
- You can also view my personal copy of the paper. Warning!
IEEE Copyright rules apply!
- Here are the slides from the talk I gave at ISPASS:
I presented an earlier version on this work at the
FHPM 2010 Workshop:
A somewhat older and more disorganized list of the results I find are
presented broken-out here.
This project has two phases. The first involved generating
a large hand-coded assembly benchmark that was used to
find non-determinisms in the hardware performance counters
on a variety of x86_64 systems.
The second phase is automating the code generating and having
some sort of automatic search for such problems. This work
The most recent version of the tool used to gather this
information can be obtained via:
git clone https://github.com/deater/deterministic
An older stable release can be downloaded:
15 February 2013
Back to my projects page