Combining Edge Vector and Event Counter for Time-Dependent Power Behavior Characterization
Fine-grained program power behavior is useful in both evaluating power optimizations and observing power optimization opportunities. Detailed power simulation is time consuming and often inaccurate. Physical power measurement is faster and objective. However, fine-grained measurement generates enormous amounts of data in which locating important features is difficult, while coarse-grained measurement sacrifices important detail.
We present a program power behavior characterization infrastructure that identifies program phases, selects a representative interval of execution for each phase, and instruments the program to enable precise power measurement of these intervals to get their time-dependent power behavior.
We show that the representative intervals accurately model the fine-grained time-dependent behavior of the program. They also accurately estimate the total energy of a program. Our compiler infrastructure allows for easy mapping between a measurement result and its corresponding source code. We improve the accuracy of our technique over previous work by using edge vectors, i.e., counts of traversals of control-flow edges, instead of basic block vectors, as well as incorporating event counters into our phase classification.
We validate our infrastructure through the physical power measurement of 10 SPEC CPU 2000 integer benchmarks on an Intel Pentium 4 system. We show that using edge vectors reduces the error of estimating total program energy by 35% over using basic block vectors, and using edge vectors plus event counters reduces the error of estimating the fine-grained time-dependent power profile by 22% over using basic block vectors.
KeywordsFast Fourier Transform Root Mean Square Basic Block Program Execution Event Counter
Unable to display preview. Download preview PDF.
- 1.Yun, H.S., Kim, J.: Power-aware modulo scheduling for high-performance VLIW. In: International Symposium on Low Power Electronics and Design (ISLPED 2001), Huntington Beach, CA (August 2001)Google Scholar
- 2.Toburen, M., Conte, T., Reilly, M.: Instruction scheduling for low power dissipation in high performance microprocessors. In: Power Driven Microarchitecture Workshop, Barcelona, Spain (June 1998)Google Scholar
- 3.Su, C.L., Tsui, C.Y., Despain, A.: Low power architecture and compilation techniques for high-performance processors. In: IEEE COMPCON, San Francisco, CA, February 1994, pp. 489–498 (1994)Google Scholar
- 4.Hazelwood, K., Brooks, D.: Eliminating voltage emergencies via microarchitectural voltage control feedback and dynamic optimization. In: International Symposium on Low-Power Electronics and Design, Newport Beach, CA (August 2004)Google Scholar
- 5.Sherwood, T., Perelman, E., Hamerly, G., Calder, B.: Automatically characterizing large scale program behavior. In: Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2002) (2002)Google Scholar
- 6.Manne, S., Klauser, A., Grunwald, D.: Pipeline gating: speculation control for energy reduction. In: Proceedings of the 25th Annual International Symposium on Computer Architecture (ISCA 1998), pp. 132–141 (1998)Google Scholar
- 7.Hsu, C.H., Kremer, U.: The design, implementation, and evaluation of a compiler algorithm for cpu energy reduction. In: Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation (PLDI 2003), pp. 38–48 (2003)Google Scholar
- 8.Sherwood, T., Perelman, E., Calder, B.: Basic block distribution analysis to find periodic behavior and simulation points in applications. In: Proceedings of the 2001 International Conference on Parallel Architectures and Compilation Techniques (PACT 2001), pp. 3–14 (2001)Google Scholar
- 9.Shen, X., Zhong, Y., Ding, C.: Locality phase prediction. In: Proceedings of the 11th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2004), pp. 165–176 (2004)Google Scholar
- 10.Iyer, A., Marculescu, D.: Power aware microarchitecture resource scaling. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE 2001), pp. 190–196 (2001)Google Scholar
- 11.Lau, J., Perelman, E., Hamerly, G., Sherwood, T., Calder, B.: Motivation for variable length intervals and hierarchical phase behaviour. In: The Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS 2005), pp. 135–146 (2005)Google Scholar
- 12.Chi, E., Salem, A.M., Bahar, R.I.: Combining software and hardware monitoring for improved power and performance tuning. In: Proceedings of the Seventh Annual Workshop on Interaction between Compilers and Computer Architectures (INTERACT 2003) (2003)Google Scholar
- 13.Duesterwald, E., Cascaval, C., Dwarkadas, S.: Characterizing and predicting program behavior and its variability. In:Proceedings of the 12th International Conference on Parallel Architectures and Compilation Techniques (PACT 2003), p. 220 (2003)Google Scholar
- 14.Srinivasan, R., Cook, J., Cooper, S.: Fast, accurate microarchitecture simulation using statistical phase detection. In: Proceedings of The 2005 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS 2005) (2005)Google Scholar
- 15.Isci, C., Martonosi, M.: Identifying program power phase behavior using power vectors. In: Proceedings of the IEEE International Workshop on Workload Characterization (WWC-6) (2003)Google Scholar
- 16.Flinn, J., Satyanarayanan, M.: Powerscope: A tool for profiling the energy usage of mobile applications. In: Proceedings of the Second IEEE Workshop on Mobile Computer Systems and Applications, p. 2 (1999)Google Scholar
- 17.Isci, C., Martonosi, M.: Runtime power monitoring in high-end processors: Methodology and empirical data. In: Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2003), p. 93 (2003)Google Scholar
- 18.Hu, C., Jiménez, D.A., Kremer, U.: Toward an evaluation infrastructure for power and energy optimizations. In: 19th International Parallel and Distributed Processing Symposium (IPDPS 2005, Workshop 11), CD-ROM / Abstracts Proceedings (April 2005)Google Scholar
- 19.Isci, C., Martonosi, M.: Phase characterization for power: Evaluating control-flow-based and event-counter-based techniques. In: 12th International Symposium on High-Performance Computer Architecture (HPCA-12) (Feburary 2006)Google Scholar