A trace-based binary compilation framework for energy-aware computing

被引:1
|
作者
Li, L [1 ]
Xue, JL [1 ]
机构
[1] Univ New S Wales, Sch Engn & Comp Sci, Compiler Res Grp, Sydney, NSW 2052, Australia
关键词
algorithms; languages; experimentation; performance; energy optimisation; trace; link-time optimisation; profile-guided optimisation; binary translation;
D O I
10.1145/998300.997178
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Energy-aware compilers are becoming increasingly important for embedded systems due to the need to meet conflicting constraints on time, code size and power consumption. We introduce a trace-based, offline compiler framework on binaries and demonstrate its benefits in supporting energy optimisations. The key innovation lies in identifying frequently executed paths in a binary program and duplicating them as single-entry traces. Separating frequently from infrequently executed paths enables the compiler to focus both performance and energy optimisations on the hot traces. Traces constructed at the level of binaries are inherently inter-procedural, spanning both application and library code. Such a framework allows an embedded application developer to exploit optimisation opportunities made possible due to the information that is available only at link time. We describe the implementation of our trace-based framework in alto, a link-time optimiser for the Alpha architecture. We present a new algorithm for constructing the hot traces from binaries. This algorithm is both effective (since the execution cycles are mostly spent on traces) and practical (due to small code size increases caused). We have developed and implemented a new optimisation to reduce the functional unit leakage energy. We show how the traces facilitate the development of such an optimisation, which results in significant leakage energy savings for benchmark programs at the cost of small performance penalties.
引用
收藏
页码:95 / 106
页数:12
相关论文
共 50 条
  • [1] A Trace-based JIT Compilation Framework for XQuery
    Wu, Chenzhi
    Liao, Husheng
    Yu, Chenglong
    Su, Hang
    [J]. 2014 19TH INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS (ICECCS 2014), 2014, : 158 - 165
  • [2] STRAF: A Scala Framework for Experiments in Trace-Based JIT Compilation
    Vandercammen, Maarten
    Stievenart, Quentin
    De Meuter, Wolfgang
    De Roover, Coen
    [J]. GRAND TIMELY TOPICS IN SOFTWARE ENGINEERING, 2017, 10223 : 223 - 234
  • [3] A flexible framework for studying trace-based just-in-time compilation
    Vandercarnmen, Maarten
    Marr, Stefan
    De Roover, Coen
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 51 : 22 - 47
  • [4] Energy-aware framework for virtual machine consolidation in Cloud computing
    Cao, Zhibo
    Dong, Shoubin
    [J]. 2013 IEEE 15TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS & 2013 IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING (HPCC_EUC), 2013, : 1890 - 1895
  • [5] ENERGY-AWARE COMPUTING Introduction
    Wenisch, Thomas F.
    Buyuktosunoglu, Alper
    [J]. IEEE MICRO, 2012, 32 (05) : 6 - 8
  • [6] Energy-Aware Scheduling in Edge Computing Based on Energy Internet
    Zhang, Qing
    Lin, Xiaoyong
    Hao, Yongsheng
    Cao, Jie
    [J]. IEEE ACCESS, 2020, 8 : 229052 - 229065
  • [7] An energy-aware heuristic framework for virtual machine consolidation in Cloud computing
    Zhibo Cao
    Shoubin Dong
    [J]. The Journal of Supercomputing, 2014, 69 : 429 - 451
  • [8] An energy-aware framework for dynamic software management in mobile computing systems
    Fei, Yunsi
    Zhong, Lin
    Jha, Niraj K.
    [J]. ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2008, 7 (03)
  • [9] An energy-aware heuristic framework for virtual machine consolidation in Cloud computing
    Cao, Zhibo
    Dong, Shoubin
    [J]. JOURNAL OF SUPERCOMPUTING, 2014, 69 (01): : 429 - 451
  • [10] Energy-Aware Computing for Android Platforms
    Chang, Hung-Ching
    Agrawal, Abhishek R.
    Cameron, Kirk W.
    [J]. 2011 INTERNATIONAL CONFERENCE ON ENERGY AWARE COMPUTING, 2011,