Title :
Non-determinism and overcount on modern hardware performance counter implementations
Author :
Weaver, Vincent M. ; Terpstra, Dan ; Moore, Steven
Author_Institution :
Electr. & Comput. Eng., Univ. of Maine, Orono, ME, USA
Abstract :
Ideal hardware performance counters provide exact deterministic results. Real-world performance monitoring unit (PMU) implementations do not always live up to this ideal. Events that should be exact and deterministic (such as retired instructions) show run-to-run variation and overcount on ×86_64 machines, even when run in strictly controlled environments. These effects are non-intuitive to casual users and cause difficulties when strict determinism is desirable, such as when implementing deterministic replay or deterministic threading libraries. We investigate eleven different x86 64 CPU implementations and discover the sources of divergence from expected count totals. Of all the counter events investigated, we find only a few that exhibit enough determinism to be used without adjustment in deterministic execution environments. We also briefly investigate ARM, IA64, POWER and SPARC systems and find that on these platforms the counter events have more determinism. We explore various methods of working around the limitations of the ×86_64 events, but in many cases this is not possible and would require architectural redesign of the underlying PMU.
Keywords :
computer architecture; multiprocessing systems; performance evaluation; ARM; IA64 system; PMU implementations; POWER system; SPARC system; architectural redesign; counter event; deterministic replay library implementation; deterministic threading library implementation; hardware performance counter implementation; ideal hardware performance counters; nondeterminism; overcount; performance monitoring unit; run-to-run variation; x86_64 CPU implementations; Assembly; Benchmark testing; Hardware; Kernel; Phasor measurement units; Radiation detectors;
Conference_Titel :
Performance Analysis of Systems and Software (ISPASS), 2013 IEEE International Symposium on
Conference_Location :
Austin, TX
Print_ISBN :
978-1-4673-5776-0
Electronic_ISBN :
978-1-4673-5778-4
DOI :
10.1109/ISPASS.2013.6557172