Automatically characterizing large scale program behavior
- 1 October 2002
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGOPS Operating Systems Review
- Vol. 36 (5), 45-57
- https://doi.org/10.1145/635508.605403
Abstract
Understanding program behavior is at the foundation of computer architecture and program optimization. Many programs have wildly different behavior on even the very largest of scales (over the complete execution of the program). This realization has ramifications for many architectural and compiler techniques, from thread scheduling, to feedback directed optimizations, to the way programs are simulated. However, in order to take advantage of time-varying behavior, we must first develop the analytical tools necessary to automatically and efficiently analyze program behavior over large sections of execution.Our goal is to develop automatic techniques that are capable of finding and exploiting the Large Scale Behavior of programs (behavior seen over billions of instructions). The first step towards this goal is the development of a hardware independent metric that can concisely summarize the behavior of an arbitrary section of execution in a program. To this end we examine the use of Basic Block Vectors. We quantify the effectiveness of Basic Block Vectors in capturing program behavior across several different architectural metrics, explore the large scale behavior of several programs, and develop a set of algorithms based on clustering capable of analyzing this behavior. We then demonstrate an application of this technology to automatically determine where to simulate for a program to help guide computer architecture research.Keywords
This publication has 8 references indexed in Scilit:
- HLSPublished by Association for Computing Machinery (ACM) ,2000
- Clustering Gene Expression PatternsJournal of Computational Biology, 1999
- Data clusteringACM Computing Surveys, 1999
- Web document clusteringPublished by Association for Computing Machinery (ACM) ,1998
- Neural Networks for Pattern RecognitionPublished by Oxford University Press (OUP) ,1995
- A Reference Bayesian Test for Nested Hypotheses and its Relationship to the Schwarz CriterionJournal of the American Statistical Association, 1995
- ATOMPublished by Association for Computing Machinery (ACM) ,1994
- Robust clustering with applications in computer visionIEEE Transactions on Pattern Analysis and Machine Intelligence, 1991