Paper
Myles G. Watson and J. Kelly Flanagan. Does Halting Make Trace Collection Inaccurate? A Case Study Using Pentium 4 Performance Counters and SPEC2000. In Proceedings of the Seventh IEEE Annual Workshop on Workload Characterization, October 2004.
Abstract
Processor address traces are invaluable for characterizing workloads and
testing proposed memory hierarchies. Long traces are needed to exercise
modern cache designs and produce meaningful results, but are difficult to
collect with hardware monitors because microprocessors access memory too
frequently for disks or other large storage to keep up. The small, fast
buffers of the monitors fill quickly; in order to obtain long contiguous
traces, the processor must be stopped while the buffer is emptied. This
halting may perturb the traces collected, but this cannot be measured
directly, since long uninterrupted traces cannot be collected. We make
the case that hardware performance counters, which collect runtime
statistics without influencing execution, can be used to measure halting
effects. We use the performance counters of the Pentium 4 processor to
collect statistics while halting the processor as if traces were being
collected. We then compare these results to the statistics obtained from
unhalted runs. We present our results in terms of which counters are
affected, why, and what this means for trace-collection systems.