Fast Dynamic Binary Translation for the Kernel

被引:11
|
作者
Kedia, Piyus [1 ]
Bansal, Sorav [1 ]
机构
[1] Indian Inst Technol Delhi, Delhi, India
关键词
D O I
10.1145/2517349.2522718
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Dynamic binary translation (DBT) is a powerful technique with several important applications. System-level binary translators have been used for implementing a Virtual Machine Monitor [2] and for instrumentation in the OS kernel [10]. In current designs, the performance overhead of binary translation on kernel-intensive workloads is high. e.g., over 10x slowdowns were reported on the syscall nanobenchmark in [2], 2-5x slowdowns were reported on lmbench microbenchmarks in [10]. These overheads are primarily due to the extra work required to correctly handle kernel mechanisms like interrupts, exceptions, and physical CPU concurrency. We present a kernel-level binary translation mechanism which exhibits near-native performance even on applications with large kernel activity. Our translator relaxes transparency requirements and aggressively takes advantage of kernel invariants to eliminate sources of slowdown. We have implemented our translator as a loadable module in unmodified Linux, and present performance and scalability experiments on multiprocessor hardware. Although our implementation is Linux specific, our mechanisms are quite general; we only take advantage of typical kernel design patterns, not Linux-specific features. For example, our translator performs 3x faster than previous kernel-level DBT implementations while running the Apache web server.
引用
收藏
页码:101 / 115
页数:15
相关论文
共 50 条
  • [41] Improving SIMD Parallelism via Dynamic Binary Translation
    Hong, Ding-Yong
    Liu, Yu-Ping
    Fu, Sheng-Yu
    Wu, Jan-Jan
    Hsu, Wei-Chung
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2018, 17 (03)
  • [42] An approach to minimizing the interpretation overhead in Dynamic Binary Translation
    Chen, Wei
    Chen, Dan
    Wang, Zhiying
    JOURNAL OF SUPERCOMPUTING, 2012, 61 (03): : 804 - 825
  • [43] Cache load balancing oriented dynamic binary translation
    Li, Zhanhui
    Liu, Chang
    Meng, Jianyi
    Yan, Xiaolang
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2015, 52 (09): : 2105 - 2113
  • [44] Optimization of Library Function Disposing in Dynamic Binary Translation
    Fu L.
    Pang J.
    Wang J.
    Zhang J.
    Yue F.
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2019, 56 (08): : 1783 - 1791
  • [45] An approach to minimizing the interpretation overhead in Dynamic Binary Translation
    Wei Chen
    Dan Chen
    Zhiying Wang
    The Journal of Supercomputing, 2012, 61 : 804 - 825
  • [46] Dynamic binary translation for accumulator-oriented architectures
    Kim, HS
    Smith, JE
    CGO 2003: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2003, : 25 - 35
  • [47] Using Pcache to Speedup Interpretation in Dynamic Binary Translation
    Chen, Wei
    Lu, Hongyi
    Shen, Li
    Wang, Zhiying
    Xiao, Nong
    2009 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED PROCESSING WITH APPLICATIONS, PROCEEDINGS, 2009, : 525 - 530
  • [48] Fast dynamic routing based on weighted kernel density estimation
    Zhang, Suofei
    Zhao, Wei
    Wu, Xiaofu
    Zhou, Quan
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2021, 33 (15):
  • [49] Supporting legacy binary code in a software transaction compiler with dynamic binary translation and optimization
    Wang, Cheng
    Ying, Victor
    Wu, Youfeng
    COMPILER CONSTRUCTION, 2008, 4959 : 291 - 306
  • [50] Exploiting Binary Translation for Fast ASIP Design Space Exploration on FPGAs
    Pomata, Sebastiano
    Meloni, Paolo
    Tuveri, Giuseppe
    Raffo, Luigi
    Lindwer, Menno
    DESIGN, AUTOMATION & TEST IN EUROPE (DATE 2012), 2012, : 566 - 569