Title :
Can hardware performance counters be trusted?
Author :
Weaver, Vincent M. ; McKee, Sally A.
Author_Institution :
Comput. Syst. Lab., Cornell Univ., Ithaca, NY
Abstract :
When creating architectural tools, it is essential to know whether the generated results make sense. Comparing a toolpsilas outputs against hardware performance counters on an actual machine is a common means of executing a quick sanity check. If the results do not match, this can indicate problems with the tool, unknown interactions with the benchmarks being investigated, or even unexpected behavior of the real hardware. To make future analyses of this type easier, we explore the behavior of the SPEC benchmarks with both dynamic binary instrumentation (DBI) tools and hardware counters. We collect retired instruction performance counter data from the full SPEC CPU 2000 and 2006 benchmark suites on nine different implementations of the times86 architecture. When run with no special preparation, hardware counters have a coefficient of variation of up to 1.07%. After analyzing results in depth, we find that minor changes to the experimental setup reduce observed errors to less than 0.002% for all benchmarks. The fact that subtle changes in how experiments are conducted can largely impact observed results is unexpected, and it is important that researchers using these counters be aware of the issues involved.
Keywords :
computer architecture; SPEC CPU 2000; SPEC CPU 2006; SPEC benchmarks; architectural tools; dynamic binary instrumentation tools; hardware performance counters; Aggregates; Counting circuits; Hardware; Instruments; Laboratories; Sampling methods; Semiconductor device measurement; Statistics; Systolic arrays; Time measurement;
Conference_Titel :
Workload Characterization, 2008. IISWC 2008. IEEE International Symposium on
Conference_Location :
Seattle, WA
Print_ISBN :
978-1-4244-2777-2
Electronic_ISBN :
978-1-4244-2778-9
DOI :
10.1109/IISWC.2008.4636099