Low Overhead Dynamic Binary Translation on ARM

被引:2
|
作者
d'Antras, Amanieu [1 ]
Gorgovan, Cosmin [1 ]
Garside, Jim [1 ]
Lujan, Mikel [1 ]
机构
[1] Univ Manchester, Sch Comp Sci, Manchester, Lancs, England
基金
英国工程与自然科学研究理事会;
关键词
Binary Translation; ARM;
D O I
10.1145/3062341.3062371
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The ARMv8 architecture introduced AArch64, a 64-bit execution mode with a new instruction set, while retaining binary compatibility with previous versions of the ARM architecture through AArch32, a 32-bit execution mode. Most hardware implementations of ARMv8 processors support both AArch32 and AArch64, which comes at a cost in hardware complexity. We present MAMBO-X64, a dynamic binary translator for Linux which executes 32-bit ARM binaries using only the AArch64 instruction set. We have evaluated the performance of MAMBO-X64 on three existing ARMv8 processors which support both AArch32 and AArch64 instruction sets. The performance was measured by comparing the running time of 32-bit benchmarks running under MAMBO-X64 with the same benchmark running natively. On SPEC CPU2006, we achieve a geometric mean overhead of less than 7.5% on in-order Cortex-A53 processors and a performance improvement of 1% on out-of-order X-Gene 1 processors. MAMBO-X64 achieves such low overhead by novel optimizations to map AArch32 floating-point registers to AArch64 registers dynamically, handle overflowing address calculations efficiently, generate traces that harness hardware return address prediction, and handle operating system signals accurately.
引用
收藏
页码:333 / 346
页数:14
相关论文
共 50 条
  • [21] Exploiting Vector Processing in Dynamic Binary Translation
    Lin, Chih-Min
    Fu, Sheng-Yu
    Hong, Ding-Yong
    Liu, Yu-Ping
    Wu, Jan-Jan
    Hsu, Wei-Chung
    PROCEEDINGS OF THE 48TH INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING (ICPP 2019), 2019,
  • [22] Dynamic Binary Translation Specialized for Embedded Systems
    Kondoh, Goh
    Komatsu, Hideaki
    ACM SIGPLAN NOTICES, 2010, 45 (07) : 157 - 166
  • [23] Optimising Dynamic Binary Modification Across ARM Microarchitectures
    Callaghan, Guillermo
    Gorgovan, Cosmin
    Lujan, Mikel
    PROCEEDINGS OF THE 2018 ACM/SPEC INTERNATIONAL CONFERENCE ON PERFORMANCE ENGINEERING (ICPE '18), 2018, : 28 - 39
  • [24] UQBT: Adaptable binary translation at low cost
    Cifuentes, C
    Van Emmerik, M
    COMPUTER, 2000, 33 (03) : 60 - +
  • [25] SINOF: A dynamic-static combined framework for dynamic binary translation
    Guan, Haibing
    Zhu, Erzhou
    Wang, Hongxi
    Ma, Ruhui
    Yang, Yindong
    Wang, Bin
    JOURNAL OF SYSTEMS ARCHITECTURE, 2012, 58 (08) : 305 - 317
  • [26] A Low-Overhead Dynamic Optimization Framework for Multicores
    Fletcher, Christopher W.
    Harding, Rachael
    Khan, Omer
    Devadas, Srinivas
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'12), 2012, : 467 - 468
  • [27] Comprehensive Kernel Instrumentation via Dynamic Binary Translation
    Feiner, Peter
    Brown, Angela Demke
    Goel, Ashvin
    ACM SIGPLAN NOTICES, 2012, 47 (04) : 135 - 146
  • [28] Dynamic Binary Translation of VLIW Codes on Scalar Architectures
    Michel, Luc
    Petrot, Frederic
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2017, 36 (05) : 789 - 800
  • [29] Using dynamic binary translation to fuse dependent instructions
    Hu, SL
    Smith, JE
    CGO 2004: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2004, : 213 - 224
  • [30] A Hardware-assisted Translation Cache for Dynamic Binary Translation in Embedded Systems
    Salgado, Filipe
    Gomes, Tiago
    Tavares, Adriano
    Cabral, Jorge
    2018 IEEE 23RD INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2018, : 307 - 312