• DocumentCode
    1934107
  • Title

    Hermes: A fast cross-ISA binary translator with post-optimization

  • Author

    Xiaochun Zhang ; Qi Guo ; Yunji Chen ; Tianshi Chen ; Weiwu Hu

  • Author_Institution
    State Key Lab. of Comput. Archit., Inst. of Comput. Technol., Beijing, China
  • fYear
    2015
  • fDate
    7-11 Feb. 2015
  • Firstpage
    246
  • Lastpage
    256
  • Abstract
    In the era of mobile and cloud computing, cross-ISA (Instruction Set Architecture) binary translation attracts increasing attentions due to the ISA diversity of computing platforms. To easily adapt to vast guest- and host-ISAs with minimal porting efforts, existing cross-ISA binary translators (e.g., QEMU) are typically built upon ISA-independent Intermediate Representation (IR). Although IR conceals the architectural details of different IS As, it also prevents enforcing several effective ISA-specific optimizations, which results in severe performance degradation. To improve the performance of cross-ISA binary translation without loss of portability, we present a fast cross-ISA binary translator, Hermes, by conducting post-optimization on the translated code, rather than on the IR as conventional binary translators do. The proposed post-optimization technique uses Host-specific Data Dependence Graph (HDDG) to significantly eliminate redundant instructions, including arithmetic, load/store and call/return-emulation instructions. To validate our approach, we implement Hermes on a commercial MIPS host system for both ×86 and ARM guest. Compared with QEMU dynamic binary translator, HERMES improves the performance by a factor of 3.14× and 5.18× for ×86 and ARM guest, respectively. Compared with state-of-the-art static binary translator, HERMES achieves comparable performance, while it reduces the translation overhead by 185×.
  • Keywords
    cloud computing; graph theory; instruction sets; mobile computing; optimisation; HDDG; HERMES; ISA-independent intermediate representation; ISA-specific optimizations; cloud computing; fast cross-ISA binary translator; host-specific data dependence graph; instruction set architecture binary translation; mobile computing; post-optimization; Cloud computing; Computer architecture; Emulation; Mobile communication; Optimization; Program processors; Registers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization (CGO), 2015 IEEE/ACM International Symposium on
  • Conference_Location
    San Francisco, CA
  • Type

    conf

  • DOI
    10.1109/CGO.2015.7054204
  • Filename
    7054204