Mobile ecosystem driven application-specific low-power control microarchitecture

A well-established technique for reducing embedded processor power is to leverage rigorous static code analysis to enable application-specific hardware customizations. Energy can be saved by leveraging compile-time information to eliminate certain hardware operations. One such research area reduced branch prediction hardware power by statically extracting application control flow information. However, the applicability of these static techniques has stalled with respect to modern smartphones. These high-performance mobile processors inhabit a unique mobile ecosystem domain space. Rather than an application consisting of a monolithic instruction sequence compiled on the target processor, mobile applications are stored in a centralized marketplace and consist of high-level object-oriented code that dynamically binds with device-specific foundation libraries. While this model helps reduce development time and enables applications to be downloaded and run on a variety of device models and operating system versions, it significantly hinders whole application static analysis and application-specific hardware optimizations. This paper addresses the unique challenges of the mobile ecosystem by enabling on-device application analysis to guide reconfiguration of the branch target buffer. Software and hardware customizations are intelligently combined to greatly reduce power dissipation while maintaining or even improving performance.

[1]  Vittorio Zaccaria,et al.  Power-aware branch prediction techniques: a compiler-hints based approach for VLIW processors , 2004, GLSVLSI '04.

[2]  Shuai Wang,et al.  BTB Access Filtering: A Low Energy and High Performance Design , 2008, 2008 IEEE Computer Society Annual Symposium on VLSI.

[3]  Norman P. Jouppi,et al.  CACTI: an enhanced cache access and cycle time model , 1996, IEEE J. Solid State Circuits.

[4]  B. Zamani,et al.  A Novel Approach for Branch Buffer Consuming Power Reduction , 2008, 2008 International Conference on Computer and Electrical Engineering.

[5]  Ronald G. Dreslinski,et al.  Full-system analysis and characterization of interactive smartphone applications , 2011, 2011 IEEE International Symposium on Workload Characterization (IISWC).

[6]  Michael C. Huang,et al.  Branch prediction on demand: an energy-efficient solution , 2003, ISLPED '03.

[7]  Alex Orailoglu,et al.  On-device objective-C application optimization framework for high-performance mobile processors , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[8]  Narseo Vallina-Rodriguez,et al.  Energy Management Techniques in Modern Mobile Handsets , 2013, IEEE Communications Surveys & Tutorials.

[9]  Nikil Dutt,et al.  An Enhanced Power Estimation Model for On-Chip Caches , 2004 .

[10]  Michael C. Huang,et al.  Customizing the Branch Predictor to Reduce Complexity and Energy Consumption , 2003, IEEE Micro.

[11]  Chris H. Perleberg,et al.  Branch Target Buffer Design and Optimization , 1993, IEEE Trans. Computers.

[12]  Peter Petrov,et al.  Low-power branch target buffer for application-specific embedded processors , 2003, Euromicro Symposium on Digital System Design, 2003. Proceedings..

[13]  Kevin Skadron,et al.  Power-aware branch prediction: characterization and design , 2004, IEEE Transactions on Computers.

[14]  Shlomo Weiss,et al.  Low power branch prediction for embedded application processors , 2010, 2010 ACM/IEEE International Symposium on Low-Power Electronics and Design (ISLPED).