A framework for statistical modeling of superscalar processor performance

D.B. Noonburg, J.P. Shen
Proceedings Third International Symposium on High-Performance Computer Architecture  
This dissertation presents a statistical approach to modeling superscalar processor performance. Instead of directly modeling an execution trace, as with standard simulationbased performance models, a statistical model works with the probabilities of instruction types, instruction sequences, and processor states. The program trace and machine are analyzed separately, and the performance is computed from these two inputs. The statistical flow graph is introduced as a compact representation for
more » ... ogram traces. The characterization of a specific processor and the statistical flow graph for a specific benchmark are combined to form a Markov chain. In order to reduce the state space size, this Markov chain is partitioned into several smaller sub-models. Simulation-based techniques require extremely long run times, especially as traces reach lengths in the billions of instructions. The statistical approach presented here dramatically reduces the time required to explore a microarchitectural design space. Separating the program and machine models allows the time-consuming part of the modeling process, which takes time proportional to the trace length, to be done only once per benchmark. The statistical model and program trace representation are extended to include various microarchitectural features, including branch prediction, I-caches, D-caches, and value prediction. Enough information is extracted from a single trace analysis to allow modeling of that benchmark on a large family of processors. The results show that the statistical model produces IPC estimates very close -within a few percent -to the IPCs measured by a cycle-accurate simulator. An explanation for the modeling error is presented, and a technique is demonstrated by which statistical model run time can be traded for improved accuracy. iii iv Acknowledgments There are many people who deserve my thanks for their help and support throughout my tenure as a graduate student. First, I want to thank my advisor, John Paul Shen. John started me on the topic of statistical modeling by suggesting the idea of a physics of computer architecture, and has encouraged me through the project, despite many wrong paths and dead ends. In addition, I want to thank the rest of my thesis committee -Randy Bryant, Hyong Kim, and Daniel Siewiorek from CMU and Keith Diefendorff from Apple Computer -who provided many useful suggestions. I would like to thank all of my officemates and other students in our research group for their friendship and for conversations about pretty much everything:
doi:10.1109/hpca.1997.569691 dblp:conf/hpca/NoonburgS97 fatcat:jtubckj4uvd4riogmbaneyei5m