ABSTRACT
We present PowerDial, a system for dynamically adapting application behavior to execute successfully in the face of load and power fluctuations. PowerDial transforms static configuration parameters into dynamic knobs that the PowerDial control system can manipulate to dynamically trade off the accuracy of the computation in return for reductions in the computational resources that the application requires to produce its results. These reductions translate directly into performance improvements and power savings.
Our experimental results show that PowerDial can enable our benchmark applications to execute responsively in the face of power caps that would otherwise significantly impair responsiveness. They also show that PowerDial can significantly reduce the number of machines required to service intermittent load spikes, enabling reductions in power and capital costs.
- Intel Xeon Processor. http://www.intel.com/technology/Xeon.Google Scholar
- Project Gutenberg. http://www.gutenberg.org/.Google Scholar
- Intel Atom Processor. http://www.intel.com/technology/atom.Google Scholar
- Wattsup .net meter. http://www.wattsupmeters.com/.Google Scholar
- Xiph.org. http://xiph.org.Google Scholar
- D. H. Albonesi, R. Balasubramonian, S. G. Dropsho, S. Dwarkadas, E. G. Friedman, M. C. Huang, V. Kursun, G. Magklis, M. L. Scott, G. Semeraro, P. Bose, A. Buyuktosunoglu, P. W. Cook, and S. E. Schuster. Dynamically tuning processor resources with adaptive processing. Computer, 36:49--58, December 2003. Google ScholarDigital Library
- J. Ansel, C. Chan, Y. L. Wong, M. Olszewski, Q. Zhao, A. Edelman, and S. Amarasinghe. Petabricks: A language and compiler for algorithmic choice. In ACM SIGPLAN Conference on Programming Language Design and Implementation, Dublin, Ireland, June 2009. Google ScholarDigital Library
- W. Baek and T. Chilimbi. Green: A framework for supporting energy-conscious programming using controlled approximation. In ACM SIGPLAN Conference on Programming Language Design and Implementation, June 2010. Google ScholarDigital Library
- L. Barroso and U. Holzle. The case for energy-proportional computing. COMPUTER-IEEE COMPUTER SOCIETY, 40(12):33, 2007. Google ScholarDigital Library
- C. Bienia, S. Kumar, J. P. Singh, and K. Li. The PARSEC benchmark suite: Characterization and architectural implications. In PACT-2008: Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques, October 2008. Google ScholarDigital Library
- M. Carbin and M. Rinard. Automatically Identifying Critical Input Regions and Code in Applications. In Proceedings of the International Symposium on Software Testing and Analysis, 2010. Google ScholarDigital Library
- L. N. Chakrapani, B. E. S. Akgul, S. Cheemalavagu, P. Korkmaz, K. V. Palem, and B. Seshasayee. Ultra-efficient (embedded) soc architectures based on probabilistic cmos (pcmos) technology. In Proceedings of the conference on Design, automation and test in Europe, DATE, pages 1110--1115, 2006. Google ScholarDigital Library
- L. N. Chakrapani, K. K. Muntimadugu, A. Lingamneni, J. George, and K. V. Palem. Highly energy and performance efficient embedded computing through approximately correct arithmetic: a mathematical foundation and preliminary experimental validation. In Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems, CASES, pages 187--196, 2008. Google ScholarDigital Library
- F. Chang and V. Karamcheti. Automatic configuration and run-time adaptation of distributed applications. In Proceedings of the International ACM Symposium on High Performance Parallel and Distributed Computing, HPDC, pages 11--20, 2000. Google ScholarDigital Library
- J. Deutscher and I. Reid. Articulated body motion capture by stochastic search. International Journal of Computer Vision, 61(2):185--205, 2005. Google ScholarDigital Library
- J. Flinn and M. Satyanarayanan. Energy-aware adaptation for mobile applications. In Proceedings of the seventeenth ACM symposium on Operating systems principles, page 63. ACM, 1999. Google ScholarDigital Library
- M. Frigo and S. G. Johnson. FFTW: An adaptive software architecture for the FFT. In Proc. 1998 IEEE Intl. Conf. Acoustics Speech and Signal Processing, volume 3, pages 1381--1384. IEEE, 1998.Google ScholarCross Ref
- A. Gandhi, M. Harchol-Balter, R. Das, C. Lefurgy, and J. Kephart. Power capping via forced idleness. In Workshop on Energy-Efficient Design, June 2009.Google Scholar
- V. Ganesh, T. Leek, and M. Rinard. Taint-based directed whitebox fuzzing. In Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, pages 474--484. IEEE Computer Society, 2009. Google ScholarDigital Library
- J. George, B. Marr, B. E. S. Akgul, and K. V. Palem. Probabilistic arithmetic and energy efficient embedded signal processing. In Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, CASES, pages 158--168, 2006. Google ScholarDigital Library
- A. Goel, D. Steere, C. Pu, and J. Walpole. Swift: A feedback control and dynamic reconfiguration toolkit. In 2nd USENIX Windows NT Symposium, 1998. Google ScholarDigital Library
- H.264 reference implementation. http://iphome.hhi.de/suehring/tml/download/.Google Scholar
- J. L. Hellerstein, Y. Diao, S. Parekh, and D. M. Tilbury. Feedback Control of Computing Systems. John Wiley & Sons, 2004. Google ScholarDigital Library
- H. Hoffmann, J. Eastep, M. D. Santambrogio, J. E. Miller, and A. Agarwal. Application Heartbeats: A Generic Interface for Specifying Program Performance and Goals in Autonomous Computing Environments. In 7th International Conference on Autonomic Computing, ICAC, 2010. Google ScholarDigital Library
- H. Hoffmann, M. Maggio, M. D. Santambrogio, A. Leva, and A. Agarwal. SEEC: A Framework for Self-aware Computing. Technical Report MIT-CSAIL-TR-2010-049, CSAIL, MIT, October 2010.Google Scholar
- H. Hoffmann, S. Misailovic, S. Sidiroglou, A. Agarwal, and M. Rinard. Using Code Perforation to Improve Performance, Reduce Energy Consumption, and Respond to Failures . Technical Report MIT-CSAIL-TR-2009-042, CSAIL, MIT, September 2009.Google Scholar
- H. Hoffmann, S. Sidiroglou, M. Carbin, S. Misailovic, A. Agarwal, and M. Rinard. Power-Aware Computing with Dynamic Knobs. Technical Report TR-2010-027, CSAIL, MIT, May 2010.Google Scholar
- C. Karamanolis, M. Karlsson, and X. Zhu. Designing controllable computer systems. In Proceedings of the 10th conference on Hot Topics in Operating Systems, pages 9--15, Berkeley, CA, USA, 2005. USENIX Association. Google ScholarDigital Library
- P. J. Keleher, J. K. Hollingsworth, and D. Perkovic. Exposing application alternatives. In Proceedings of the 19th IEEE International Conference on Distributed Computing Systems, ICDCS, page 384, Washington, DC, USA, 1999. IEEE Computer Society. Google ScholarDigital Library
- C. Lattner and V. Adve. LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. In Proceedings of the 2004 International Symposium on Code Generation and Optimization, CGO, Palo Alto, California, March 2004. Google ScholarDigital Library
- C. Lefurgy, X. Wang, and M. Ware. Power capping: a prelude to power shifting. Cluster Computing, 11(2):183--195, 2008. Google ScholarDigital Library
- J. Letchner, C. Re, M. Balazinska, and M. Philipose. Approximation trade-offs in markovian stream processing: An empirical study. In 2010 IEEE 26th International Conference on Data Engineering, ICDE, pages 936--939, 2010.Google ScholarCross Ref
- B. Li and K. Nahrstedt. A control-based middleware framework for quality-of-service adaptations. Selected Areas in Communications, IEEE Journal on, 17(9):1632--1650, September 1999. Google ScholarDigital Library
- S. Liu, K. P. amd Thomas Moscibroda, and B. G. Zorn. Flicker: Saving Refresh-Power in Mobile Devices through Critical Data Partitioning. Technical Report MSR-TR-2009-138, Microsoft Research, Oct. 2009.Google Scholar
- M. Maggio, H. Hoffmann, M. D. Santambrogio, A. Agarwal, and A. Leva. Controlling software applications via resource allocation within the Heartbeats frame work. In 49th IEEE Conference on Decision and Control, pages 3736--3741, December 2010.Google ScholarCross Ref
- J. Makhoul, F. Kubala, R. Schwartz, and R. Weischedel. Performance measures for information extraction. In Broadcast News Workshop'99 Proceedings, page 249. Morgan Kaufmann Pub, 1999.Google Scholar
- D. Meisner, B. Gold, and T. Wenisch. PowerNap: eliminating server idle power. ACM SIGPLAN Notices, 44(3):205--216, 2009. Google ScholarDigital Library
- C. Middleton and R. Baeza-Yates. A comparison of open source search engines. Technical report, Universitat Pompeu Fabra, Department of Technologies, October 2007.Google Scholar
- S. Misailovic, S. Sidiroglou, H. Hoffmann, and M. Rinard. Quality of service profiling. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, ICSE, pages 25--34. ACM, 2010. Google ScholarDigital Library
- R. Narayanan, B. Ozisikyilmaz, G. Memik, A. Choudhary, and J. Zambreno. Quantization error and accuracy-performance tradeoffs for embedded data mining workloads. In Proceedings of the 7th international conference on Computational Science, ICCS, pages 734--741, Berlin, Heidelberg, 2007. Springer-Verlag. Google ScholarDigital Library
- S. Pelley, D. Meisner, P. Zandevakili, T. Wenisch, and J. Underwood. Power routing: dynamic power provisioning in the data center. ACM SIGPLAN Notices, 45(3):231--242, 2010. Google ScholarDigital Library
- R. Ribler, J. Vetter, H. Simitci, and D. Reed. Autopilot: adaptive control of distributed applications. In High Performance Distributed Computing, July 1998. Google ScholarDigital Library
- M. Rinard. Probabilistic accuracy bounds for fault-tolerant computations that discard tasks. In Proceedings of the 20th annual international conference on Supercomputing, pages 324--334. ACM New York, NY, USA, 2006. Google ScholarDigital Library
- M. C. Rinard. Using early phase termination to eliminate load imbalances at barrier synchronization points. In Proceedings of the 22nd annual ACM conference on Object-oriented programming systems and applications, OOPSLA, pages 369--386, New York, NY, USA, 2007. ACM. Google ScholarDigital Library
- M. Salehie and L. Tahvildari. Self-adaptive software: Landscape and research challenges. ACM Transactions on Autonomous and Adaptive Systems, 4(2):1--42, 2009. Google ScholarDigital Library
- J. Sorber, A. Kostadinov, M. Garber, M. Brennan, M. D. Corner, and E. D. Berger. Eon: a language and runtime system for perpetual systems. In Proceedings of the 5th international conference on Embedded networked sensor systems, SenSys, New York, NY, USA, 2007. ACM. Google ScholarDigital Library
- P. Stanley-Marbell, D. Dolech, A. Eindhoven, and D. Marculescu. Deviation-Tolerant Computation in Concurrent Failure-Prone Hardware. Technical Report ESR-2008-01, Eindhoven University of Technology, January 2008.Google Scholar
- SWISH++. http://swishplusplus.sourceforge.net/.Google Scholar
- C. Tapus, I. Chung, and J. Hollingsworth. Active harmony: Towards automated performance tuning. In Proceedings of the 2002 ACM/IEEE Conference on Supercomputing, pages 1--11, Los Alamitos, CA, USA, 2002. IEEE Computer Society Press. Google ScholarDigital Library
- U.S. Environmental Protection Agency. EPA report to congress on server and data center energy efficiency, 2007.Google Scholar
- M. Weiser, B. Welch, A. Demers, and S. Shenker. Scheduling for reduced CPU energy. Mobile Computing, pages 449--471, 1996.Google ScholarCross Ref
- R. Whaley and J. Dongarra. Automatically tuned linear algebra software. In Proceedings of the 1998 ACM/IEEE conference on Supercomputing, pages 1--27. IEEE Computer Society, 1998. Google ScholarDigital Library
- x264. http://www.videolan.org/x264.html.Google Scholar
- J. Xiong, J. Johnson, R. W. Johnson, and D. Padua. SPL: A language and compiler for DSP algorithms. In Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation, PLDI, pages 298--308, 2001. Google ScholarDigital Library
- R. Zhang, C. Lu, T. Abdelzaher, and J. Stankovic. Controlware: A middleware architecture for feedback control of software performance. In Proceedings of the 22nd International conference on Distributed Computing Systems. IEEE computer society, 2002. Google ScholarDigital Library
Index Terms
- Dynamic knobs for responsive power-aware computing
Recommendations
Dynamic knobs for responsive power-aware computing
ASPLOS '11We present PowerDial, a system for dynamically adapting application behavior to execute successfully in the face of load and power fluctuations. PowerDial transforms static configuration parameters into dynamic knobs that the PowerDial control system ...
Dynamic knobs for responsive power-aware computing
ASPLOS '11We present PowerDial, a system for dynamically adapting application behavior to execute successfully in the face of load and power fluctuations. PowerDial transforms static configuration parameters into dynamic knobs that the PowerDial control system ...
High-Performance, Power-Aware Distributed Computing for Scientific Applications
The PowerPack framework enables distributed systems to profile, analyze, and conserve energy in scientific applications using dynamic voltage scaling. For one common benchmark, the framework achieves more than 30 percent energy savings with minimal ...
Comments