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
Link To Document :
بازگشت