The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.02 - Feb. (2013 vol.62)
pp: 268-278
Ozcan Ozturk , Bilkent University, Ankara
Mahmut Kandemir , Penn State University, University Park
Guangyu Chen , Facebook, San Jose
ABSTRACT
Addressing power and energy consumption related issues early in the system design flow ensures good design and minimizes iterations for faster turnaround time. In particular, optimizations at software level, e.g., those supported by compilers, are very important for minimizing energy consumption of embedded applications. Recent research demonstrates that voltage islands provide the flexibility to reduce power by selectively shutting down the different regions of the chip and/or running the select parts of the chip at different voltage/frequency levels. As against most of the prior work on voltage islands that mainly focused on the architecture design and IP placement related issues, this paper studies the necessary software compiler support for voltage islands. Specifically, we focus on an embedded multiprocessor architecture that supports both voltage islands and control domains within these islands, and determine how an optimizing compiler can automatically map an embedded application onto this architecture. Such an automated support is critical since it is unrealistic to expect an application programmer to reach a good mapping correlating multiple factors such as performance and energy at the same time. Our experiments with the proposed compiler support show that our approach is very effective in reducing energy consumption. The experiments also show that the energy savings we achieve are consistent across a wide range of values of our major simulation parameters.
INDEX TERMS
Computer architecture, Parallel processing, Multimedia communication, Indexes, Assembly, Energy consumption, Optimization, compiler-based parallelization, Voltage islands, compiler optimizations, energy consumption, voltage scaling
CITATION
Ozcan Ozturk, Mahmut Kandemir, Guangyu Chen, "Compiler-Directed Energy Reduction Using Dynamic Voltage Scaling and Voltage Islands for Embedded Systems", IEEE Transactions on Computers, vol.62, no. 2, pp. 268-278, Feb. 2013, doi:10.1109/TC.2011.229
REFERENCES
[1] “Blast Power,” http:/www.magma-da.com, 2011.
[2] “Chip Designers Voyage to Voltage Island,” http://news.com. com/Chip+designers+voyage+to+voltage+island 2100-1001_3-934355.html , 2011.
[3] “Solving the Power Management Dilemma in System-on-Chip Asic Design,” http://www-306.ibm.com/chips/techlib/techlib. nsf/ techdocs/31C99333210244D 787256C1A0068B733/ $file VoltageIslands.PDF, 2011.
[4] “Voltage Guidelines for Pentium Processors with Mmx Technology,” http://www.intel.com/design/intarch/applnots 24318603.pdf, 2011.
[5] “Mp98: A Mobile Processor,” http://www.labs.nec.co.jp/MP98top-e.htm,http://www.labs.nec.co.jp/MP98top-e.htm, 2011.
[6] “Majc-5200,” http://www.sun.com/microelectronics/MAJC 5200wp.html, 2011.
[7] J.-A. Carballo, J.L. Burns, S.-M. Yoo, I. Vo, and V.R. Norman, “A Semi-Custom Voltage-Island Technique and Its Application to High-Speed Serial Links,” Proc. Int'l Symp. Low Power Electronics and Design (ISLPED '03), pp. 60-65, 2003.
[8] S. Carr, K.S. McKinley, and C.-W. Tseng, “Compiler Optimizations for Improving Data Locality,” SIGPLAN Notices, vol. 29, no. 11, pp. 252-262, 1994.
[9] G. Chen, M. Kandemir, and M. Karakoy, “Compiler Support for Voltage Islands,” Proc. IEEE Int'l SOC Conf. (SOCC '06), Sept. 2006.
[10] G. Chen, F. Li, M. Kandemir, and M.J. Irwin, “Reducing Noc Energy Consumption through Compiler-Directed Channel Voltage Scaling,” Proc. Symp. Programming Language Design and Implementation (PLDI '06), vol. 41, no. 6, pp. 193-203, June 2006.
[11] G. Chen, G. Chen, O. Ozturk, and M. Kandemir, “Exploiting Inter-Processor Data Sharing for Improving Behavior of Multi-Processor Socs,” Proc. IEEE CS Ann. Symp. VLSI: New Frontiers in VLSI Design (ISVLSI '05), pp. 90-95, 2005.
[12] H. Giefers and A. Rettberg, “Energy Aware Multiple Clock Domain Scheduling for a Bit-Serial, Self-Timed Architecture,” Proc. 19th Ann. Symp. Integrated Circuits and Systems Design (SBCCI '06), pp. 113-118, 2006.
[13] C.-H. Hsu, U. Kremer, and M. Hsiao, “Compiler-directed Dynamic Frequency and Voltage Scheduling,” Proc. First Int'l Workshop Power-Aware Computer Systems-Revised Papers, (PACS '00), pp. 65-81, 2001.
[14] J. Hu, Y. Shin, N. Dhanwada, and R. Marculescu, “Architecting Voltage Islands in Core-Based System-on-a-Chip Designs,” Proc. Int'l Symp. Low Power Electronics and Design, pp. 180-185, 2004.
[15] M.J. Irwin, L. Benini, N. Vijaykrishnan, and M. Kandemir, Multiprocessor Systems-on-Chips. Morgan Kaufmann, 2003.
[16] R. Jejurikar and R. Gupta, “Dynamic Voltage Scaling for Systemwide Energy Minimization in Real-Time Embedded Systems,” Proc. Int'l Symp. Low Power Electronics and Design (ISLPED '04), pp. 78-81, 2004.
[17] I. Kadayif, M. Kandemir, G. Chen, O. Ozturk, and U. Sezer, “Optimizing Array-Intensive Applications for On-Chip Multiprocessors,” IEEE Trans. Parallel Distributed Systems, vol. 16, no. 5, pp. 396-411, May 2005.
[18] V. Krishnan and J. Torrellas, “A Chip-Multiprocessor Architecture with Speculative Multithreading,” IEEE Trans. Computers, vol. 48, no. 9, pp. 866-880, Sept. 1999.
[19] D.E. Lackey, P.S. Zuchowski, T.R. Bednar, D.W. Stout, S.W. Gould, and J.M. Cohn, “Managing Power and Performance for System-on-Chip Designs Using Voltage Islands,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design, pp. 195-202, 2002.
[20] F. Li, G. Chen, and M. Kandemir, “Compiler-Directed Voltage Scaling on Communication Links for Reducing Power Consumption,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD '05), pp. 456-460, Nov. 2005.
[21] A.W. Lim and M.S. Lam, “Maximizing Parallelism and Minimizing Synchronization with Affine Transforms,” Proc. 24th ACM SIGPLAN-SIGACT Symp. Principles of Programming Languages (POPL '97), pp. 201-214, 1997.
[22] B. Liu, Y. Cai, Q. Zhou, and X. Hong, “Power Driven Placement with Layout Aware Supply Voltage Assignment for Voltage Island Generation in Dual-vdd Designs,” Proc. Conf. Asia South Pacific Design Automation (ASP-DAC '06), pp. 582-587, 2006.
[23] Q. Ma and E.F.Y. Young, “Voltage Island-Driven Floorplanning,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD '07), pp. 644-649, 2007.
[24] P.S. Magnusson, M. Christensson, J. Eskilson, D. Forsgren, G. Hållberg, J. Högberg, F. Larsson, A. Moestedt, and B. Werner, “Simics: A Full System Simulation Platform,” Computer, vol. 35, no. 2, pp. 50-58, Feb. 2002.
[25] S. Manolache, P. Eles, and Z. Peng, “Fault and Energy-Aware Communication Mapping with Guaranteed Latency for Applications Implemented on Noc,” Proc. 42nd Ann. Conf. Design Automation, pp. 266-269, 2005.
[26] S.H.K. Narayan, O. Ozturk, M. Kandemir, and M. Karakoy, “Workload Clustering for Increasing Energy Savings on Embedded Mpsocs,” Proc. IEEE Int'l SOC Conf., 2005.
[27] K. Niyogi and D. Marculescu, “Speed and Voltage Selection for Gals Systems Based on Voltage/Frequency Islands,” Proc. Conf. Asia South Pacific Design Automation (ASP-DAC '05), pp. 292-297, 2005.
[28] K. Olukotun, B.A. Nayfeh, L. Hammond, K. Wilson, and K. Chang, “The Case for a Single-Chip Multiprocessor,” SIGPLAN Notices, vol. 31, no. 9, pp. 2-11, 1996.
[29] O. Ozturk, M. Kandemir, G. Chen, and M.J. Irwin, “Customized On-chip Memories for Embedded Chip Multiprocessors,” Proc. Conf. Asia South Pacific Design Automation, vol. 2, pp. 743-748, http://www.gigascale.org/pubs638.html, Jan. 2005.
[30] O. Ozturk, M. Kandemir, M.J. Irwin, and I. Kolcu, “Tuning Data Replication for Improving Behavior of Mpsoc Applications,” Proc. 14th ACM Great Lakes Symp. Very Large Scale Integration (GLSVLSI '04), pp. 170-173, 2004.
[31] A. Rae and S. Parameswaran, “Voltage Reduction of Application Specific Heterogeneous Multiprocessor Systems for Power Minimization,” Proc. Asia and South Pacific Design Automation Conf., 2000.
[32] A. Rangasamy, R. Nagpal, and Y. Srikant, “Compiler-directed Frequency and Voltage Scaling for a Multiple Clock Domain Microarchitecture,” Proc. Fifth Conf. Computing Frontiers, pp. 209-218, 2008.
[33] G. Reinman and N.P. Jouppi, “Cacti 2.0: An Integrated Cache Timing and Power Model,” technical Report, Compaq, Feb. 2000.
[34] C. Seiculescu, S. Murali, L. Benini, and G. De Micheli, “Comparative Analysis of Nocs for Two-dimensional Versus Three-Dimensional Socs Supporting Multiple Voltage and Frequency Islands,” IEEE Trans. Circuits and Systems II: Express Briefs, vol. 57, no. 5, pp. 364-368, May 2010.
[35] L. Shang, L.-S. Peh, and N.K. Jha, “Dynamic Voltage Scaling with Links for Power Optimization of Interconnection Networks,” Proc. Ninth Int'l Symp. High-Performance Computer Architecture (HPCA '03), p. 91, 2003.
[36] Z. Shao, M. Wang, Y. Chen, C. Xue, M. Qiu, L.T. Yang, and E.H.M. Sha, “Real-Time Dynamic Voltage Loop Scheduling for Multi-Core Embedded Systems,” IEEE Trans. Circuits and Systems II: Express Briefs, vol. 54, no. 5, pp. 445-449, May 2007.
[37] Q. Shi, T. Chen, X. Liang, and J. Huang, “Dynamic Compilation Framework with Dvs for Reducing Energy Consumption in Embedded Processors,” Proc. Int'l Conf. Embedded Software and Systems (ICESS '08), pp. 464-470, July 2008.
[38] V. Soteriou and L.S. Peh, “Dynamic Power Management for Power Optimization of Interconnection Networks Using On/Off Links,” Proc. 11th Symp. High Performance Interconnects (Hot-I), 2003.
[39] S. Tosun, N. Mansouri, M. Kandemir, and O. Ozturk, “Constraint-Based Code Mapping for Heterogeneous Chip Multiprocessors,” Proc. IEEE Int'l SOC Conf., 2005.
[40] R. Wilhelm, J. Engblom, A. Ermedahl, N. Holsti, S. Thesing, D. Whalley, G. Bernat, C. Ferdinand, R. Heckmann, F. Mueller, I. Puaut, P. Puschner, J. Staschulat, and P. Stenström, “The Determination of Worst-Case Execution Times—Overview of the Methods and Survey of Tools,” ACM Trans. Embedded Computing Systems, vol. 7, no. 3, article 36, 2008.
[41] R.P. Wilson, R.S. French, C.S. Wilson, S.P. Amarasinghe, J.M. Anderson, S.W.K. Tjiang, S.-W. Liao, C.-W. Tseng, M.W. Hall, M.S. Lam, and J.L. Hennessy, “Suif: An Infrastructure for Research on Parallelizing and Optimizing Compilers,” SIGPLAN Notices, vol. 29, no. 12, pp. 31-37, 1994.
[42] H. Wu, I.-M. Liu, M.D.F. Wong, and Y. Wang, “Post-Placement Voltage Island Generation under Performance Requirement,” Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD '05), pp. 309-316, 2005.
[43] H. Wu and M.D.F. Wong, “Incremental Improvement of Voltage Assignment,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 28, no. 2, pp. 217-230, Feb. 2009.
[44] C.Y. Yang, J.J. Chen, and T.W. Kuo, “An Approximation Algorithm for Energy Efficient Scheduling on a Chip Multiprocessor,” Proc. ACM/IEEE Design Automation and Test in Europe, Mar. 2005.
[45] W. Ye, N. Vijaykrishnan, M. Kandemir, and M.J. Irwin, “The Design and Use of Simplepower: A Cycle-Accurate Energy Estimation Tool,” Proc. 37th Conf. Design Automation, pp. 340-345, 2000.
231 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool