About this Journal Submit a Manuscript Table of Contents
Journal of Electrical and Computer Engineering
Volume 2012 (2012), Article ID 786943, 16 pages
http://dx.doi.org/10.1155/2012/786943
Research Article

Processor Energy Characterization for Compiler-Assisted Software Energy Reduction

13rd Floor Institute of System LSI Design Industry, Kyushu University, Fukuoka, 3-8-33 Momochihama, Sawara-ku, Fukuoka 814-0001, Japan
2Department of Communications and Computer Engineering, Kyoto University, Yoshidahonmachi, Sakyo-ku, Kyoto 606-8501, Japan

Received 15 July 2011; Revised 12 October 2011; Accepted 15 November 2011

Academic Editor: Ayse Kivilcim Coskun

Copyright © 2012 Lovic Gauthier and Tohru Ishihara. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Linked References

  1. D. Lee, T. Ishihara, M. Muroyama, H. Yasuura, and F. Fallah, “An energy characterization framework for software-based embedded systems,” in Proceedings of the IEEE/ACM/IFIP Workshop on Embedded Systems for Real Time Multimedia (ESTIMEDIA '06), pp. 59–64, IEEE Computer Society, Washington, DC, USA, 2006. View at Publisher · View at Google Scholar
  2. J. Flinn and M. Satyanarayanan, “PowerScope: a tool for profiling the energy usage of mobile applications,” in Proceedings of the 2nd IEEE Workshop on Mobile Computing Systems and Applications (WMCSA '99), pp. 2–10, February 1999. View at Publisher · View at Google Scholar
  3. W. R. Hamburgen, D. A. Wallach, M. A. Viredaz et al., “Itsy: stretching the bounds of mobile computing,” IEE Computer, vol. 34, no. 4, pp. 28–36, 2001. View at Publisher · View at Google Scholar · View at Scopus
  4. V. Tiwari, S. Malik, and A. Wolfe, “Power analysis of embedded software: a first step towards software power minimization,” in Proceedings of the IEEE/ACM International Conference on Computer-Aided Design(ICCAD '94), pp. 384–390, November 1994.
  5. M. T. C. Lee, V. Tiwari, S. Malik, and M. Fujita, “Power analysis and low-power scheduling techniques for embedded DSP software,” in Proceedings of the 8th International Symposium on System Synthesis (ISSS '95), pp. 110–115, September 1995. View at Scopus
  6. N. Chang, K. Kim, and H. G. Lee, “Cycle-accurate energy consumption measurement and analysis: case study of ARM7TDMI,” in Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED '00), pp. 185–190, August 2000. View at Scopus
  7. C. Brandolese, W. Fornaciari, F. Salice, and D. Sciuto, “A instruction-level functionality-based energy estimation model for 32-bits microprocessors,” in Proceedings of the 37th Design Automation Conference (DAC '00), pp. 346–351, June 2000. View at Scopus
  8. A. Sama, M. Balakrishnan, and J. F. M. Theeuwen, “Speeding up power estimation of embedded software,” in Proceedings of the International Symposium on low Power Electronics and Design (ISLPED '00), pp. 191–196, July 2000. View at Scopus
  9. A. Sinha and A. P. Chandrakasan, “JouleTrack: a web based tool for software energy profiling,” in Proceedings of the 38th Design Automation Conference (DAC '01), pp. 220–225, June 2001. View at Scopus
  10. A. Sinha, N. Ickes, and A. P. Chandrakasan, “Instruction level and operating system profiling for energy exposed software,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 11, no. 6, pp. 1044–1057, 2003. View at Publisher · View at Google Scholar · View at Scopus
  11. M. Sami, D. Sciuto, C. Silvano, and V. Zaccaria, “Instruction-level power estimation for embedded VLIW cores,” in Proceedings of the 18th International Workshop on Hardware/Software Codesign (CODES '00), pp. 34–38, May 2000.
  12. Trimaran, http://www.trimaran.org/.
  13. C. T. Hsieh, L. S. Chen, and M. Pedram, “Microprocessor power analysis by labeled simulation,” in Proceedings of the Design, Automation and Test in Europe (DATE '01), pp. 182–189, March 2001.
  14. W. Ye, N. Vijaykrishnan, M. Kandemir, and M. J. Irwin, “Design and use of SimplePower: a cycle-accurate energy estimation tool,” in Proceedings of the 37th Design Automation Conference (DAC '00), pp. 340–345, June 2000.
  15. D. Brooks, V. Tiwari, and M. Martonosi, “Wattch: a framework for architectural-level power analysis and optimizations,” in Proceedings of the 27th International Symposium on Computer Architecture (ISCA '00), pp. 83–94, June 2000. View at Scopus
  16. J. T. Russell and M. F. Jacome, “Software power estimation and optimization for high performance, 32-bit embedded processors,” in Proceedings of the IEEE International Conference on Computer Design (ICCD '98), pp. 328–333, October 1998.
  17. S. Steinke, M. Knauer, L. Wehmeyer, and P. Marwedel, “An accurate and fine grain instruction-level energy model supporting software optimizations,” in Proceedings of the Int"l Workshop Power and Timing Modeling, Optimization and Simulation (PATMOS '01), pp. 3.2.1–3.2.10, September 2001.
  18. T. Li and L. K. John, “Run-time modeling and estimation of operating system power consumption,” in Proceedings of the Int’l Conference on Measurements and Modeling of Computer Systems, pp. 160–171, June 2003.
  19. G. Contreras and M. Martonosi, “Power reduction for intel xscaler processors using performance monitoring unit events,” in Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED '05), pp. 221–226, August 2005.
  20. W. L. Bircher, M. Valluri, J. Law, and L. K. John, “Runtime identification of microprocessor energy saving opportunities,” in Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED '05), pp. 275–280, August 2005. View at Scopus
  21. T. K. Tan, A. Raghunathan, G. Lakshminarayana, and N. K. Jha, “High-level software energy macro-modeling,” in Proceedings of the 38th Design Automation Conference (DAC '01), pp. 605–610, June 2001. View at Scopus
  22. C. Zang and T. Ishihara, “An implementation of energy efficient multi-performance processor for real-time applications,” in Proceedings of the 1st International Conference on Green Circuits and Systems (ICGCS '10), pp. 211–216, June 2010. View at Publisher · View at Google Scholar · View at Scopus
  23. T. Ishihara, S. Yamaguchi, Y. Ishitobi et al., “AMPLE: an adaptive multi-performance processor for low-energy embedded applications,” in Proceedings of the IEE Symposium on Application Specific Processors (SASP '08), pp. 83–88, 2008.
  24. L. Gauthier and T. Ishihara, “Optimal stack frame placement and transfer for energy reduction targeting embedded processors with scratch-pad memories,” in Proceedings of the 7th IEEE/ACM/IFIP Workshop on Embedded Systems for Real-Time Multimedia (ESTIMedia '09), pp. 116–125, October 2009. View at Publisher · View at Google Scholar · View at Scopus
  25. University of Michigan, “MiBench benchmark suite,” http://www.eecs.umich.edu/mibench/.
  26. L. Gauthier, T. Ishihara, H. Takase, H. Tomiyama, and H. Takada, “Minimizing inter-task interferences in scratch-pad memory usage for reducing the energy consumption of multi-task systems,” in Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES '10), pp. 157–166, ACM, New York, NY, USA, 2010.
  27. P. R. Panda, N. D. Dutt, and A. Nicolau, “Efficient utilization of scratch-pad memory in embedded processor applications,” in Proceedings of the European Design and Test Conference (EDTC ’97), pp. 7–11, IEEE Computer Society, Washington, DC, USA, 1997.
  28. J. Sjödin and C. von Platen, “Storage allocation for embedded processors,” in Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES ’01), pp. 15–23, ACM, New York, NY, USA, 2001.
  29. L. Wehmeyer, U. Helmig, and P. Marwedel, “Compiler-optimized usage of partitioned memories,” in Proceedings of the 3rd Workshop on Memory Performance Issue (WMPI '04), pp. 114–120, ACM, New York, NY, USA, 2004.
  30. S. Steinke, L. Wehmeyer, B. Lee, and P. Marwedel, “Assigning program and data objects to scratchpad for energy reduction,” in Proceedings of the Conference on Design, Automation and Test in Europe (DATE '02), pp. 409–415, IEEE Computer Society, Washington, DC, USA, 2002.
  31. B. Egger, J. Lee, and H. Shin, “Scratchpad memory management in a multitasking environment,” in Proceedings of the 7th International Conference on Embedded Software (EMSOFT '08), pp. 265–274, ACM, New York, NY, USA, October 2008.
  32. V. Suhendra, C. Raghavan, and T. Mitra, “Integrated scratchpad memory optimization and task scheduling for MPSoC architectures,” in Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES '06), pp. 401–410, ACM, New York, NY, USA, October 2006. View at Publisher · View at Google Scholar · View at Scopus
  33. V. Suhendra, A. Roychoudhury, and T. Mitra, “Scratchpad allocation for concurrent embedded software,” in Proceedings of the 6th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CODES+ISSS '08), pp. 37–42, ACM, New York, NY, USA, October 2008.
  34. R. Pyka, C. Fassbach, M. Verma, H. Falk, and P. Marwedel, “Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications,” in Proceedings of the 10th International Workshop on Software & Compilers for Embedded Systems (SCOPES '07), pp. 41–50, ACM, New York, NY, USA, 2007. View at Publisher · View at Google Scholar
  35. M. Verma, K. Petzold, L. Wehmeyer, H. Falk, and P. Marwedel, “Scratchpad sharing strategies for multiprocess embedded systems: a first approach,” in Proceedings of the 3rd Workshop on Embedded Systems for Real-Time Multimedia (ESTImedia '05), vol. 2005, pp. 115–120, IEEE Computer Society, Los Alamitos, Calif, USA, 2005. View at Publisher · View at Google Scholar
  36. H. Takase, H. Tomiyama, and H. Takada, “Partitioning and allocation of scratch-pad memory in priority-based multi-task systems,” IPSJ Transactions on System LSI Design Methodology, vol. 2, pp. 180–188, 2009.
  37. T. Hideki, T. Hiroyuki, and T. Hiroaki, “Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems,” in Proceedings of the Design, Automation and Test in Europe (DATE '01), pp. 1124–1129, IEEE Computer Society, Washington, DC, USA, 2010.
  38. M. Verma, S. Steinke, and P. Marwedel, “Data partitioning for maximal scratchpad usage,” in Proceedings of the Asia and South Pacific Design Automation Conference (ASP-DAC '03), pp. 77–83, ACM, New York, NY, USA, 2003.
  39. N. Nguyen, A. Dominguez, and R. Barua, “Memory allocation for embedded systems with a compile-time-unknown scratch-pad size,” ACM Transactions in Embedded Computing Systems, vol. 8, no. 3, pp. 21:1–21:32, 2009. View at Publisher · View at Google Scholar
  40. A. Kannan, A. Shrivastava, A. Pabalkar, and J.-E. Lee, “A software solution for dynamic stack management on scratch pad memory,” in Proceedings of the Asia and South Pacific Design Automation Conference (ASP-DAC '09), pp. 612–617, IEEE, Piscataway, NJ, USA, 2009. View at Publisher · View at Google Scholar
  41. S. Udayakumaran, A. Dominguez, and R. Barua, “Dynamic allocation for scratch-pad memory using compile-time decisions,” ACM Transactions on Design Automation of Electronic Systems, vol. 5, no. 2, pp. 472–511, 2006.
  42. B. Egger, J. Lee, and H. Shin, “Dynamic scratchpad memory management for code in portable systems with an MMU,” ACM Transactions on Embedded Computing Systems, vol. 7, no. 2, pp. 1–38, 2008.
  43. Z. H. Chen and A. W. Y. Su, “A hardware/software framework for instruction and data scratchpad memory allocation,” ACM Transactions on Architecture and Code Optimization, vol. 7, pp. 2:1–2:27, 2010. View at Publisher · View at Google Scholar · View at Scopus
  44. H. Wang, Y. Zhang, C. Mei, and M. Ling, “Energy-oriented dynamic SPM allocation based on time-slotted cache conflict graph,” in Proceedings of the Conference on Design, Automation and Test in Europe (DATE '10), pp. 598–601, European Design and Automation Association, Leuven, Belgium, 2010.
  45. K. Bai and A. Shrivastava, “Heap data management for limited local memory (LLM) multi-core processors,” in Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CODES+ISSS '10), pp. 317–325, ACM, New York, NY, USA, 2010. View at Publisher · View at Google Scholar
  46. B. Egger, C. Kim, C. Jang, Y. Nam, J. Lee, and S. L. Min, “A dynamic code placement technique for scratchpad memory using postpass optimization,” in Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES '06), pp. 223–233, ACM, New York, NY, USA, 2006. View at Publisher · View at Google Scholar
  47. M. Verma, L. Wehmeyer, and P. Marwedel, “Dynamic overlay of scratchpad memory for energy minimization,” in Proceedings of the 2nd IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and Systems Synthesis (CODES+ISSS '04), pp. 104–109, ACM, New York, NY, USA, 2004.
  48. D. Cho, I. Issenin, N. Dutt, J. W. Yoon, and Y. Paek, “Software controlled memory layout reorganization for irregular array access patterns,” in Proceedings of theInternational Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES '07), pp. 179–188, ACM, New York, NY, USA, 2007. View at Publisher · View at Google Scholar
  49. L. Li, J. Xue, and J. Knoop, “Scratchpad memory allocation for data aggregates via interval coloring in superperfect graphs,” ACM Transactions on Embedded Computing Systems, vol. 10, no. 2, pp. 28:1–28:42, 2010. View at Publisher · View at Google Scholar
  50. M. A. Baker, A. Panda, N. Ghadge, A. Kadne, and K. S. Chatha, “A performance model and code overlay generator for scratchpad enhanced embedded processors,” in Proceedings of the 8th IEEE/ACM/IFIP International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CODES+ISSS '10), pp. 287–296, ACM, New York, NY, USA, 2010. View at Publisher · View at Google Scholar
  51. ILOG, “CPLEX LP solver,” http://www.ilog.com/products/cplex.
  52. A. Mizuno, H. Uetani, and H. Eichel, “Design methodology and system for a configurable media embedded processor extensible to VLIW architecture,” in Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers and Processors (ICCD ’02), pp. 2–7, IEEE Computer Society, Washington, DC, USA, 2002.
  53. Embedded Microprocessor Benchmark Consortium, “EEMBC benchmark suite,” http://www.eembc.org/home.php.