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 条
  • [31] Dynamic Binary Code Translation for Data Prefetch Optimization
    Ukezono, Tomoaki
    Tanaka, Kiyofumi
    2008 13TH ASIA-PACIFIC COMPUTER SYSTEMS ARCHITECTURE CONFERENCE, 2008, : 237 - 244
  • [32] Register liveness analysis for optimizing dynamic binary translation
    Probst, M
    Krall, A
    Scholz, B
    NINTH WORKING CONFERENCE ON REVERSE ENGINEERING, PROCEEDINGS, 2002, : 35 - 44
  • [33] Exploiting Longer SIMD Lanes in Dynamic Binary Translation
    Hong, Ding-Yong
    Fu, Sheng-Yu
    Liu, Yu-Ping
    Wu, Jan-Jan
    Hsu, Wei-Chung
    2016 IEEE 22ND INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS), 2016, : 853 - 860
  • [34] Efficient LLVM-Based Dynamic Binary Translation
    Engelke, Alexis
    Okwieka, Dominik
    Schulz, Martin
    PROCEEDINGS OF THE 17TH ACM SIGPLAN/SIGOPS INTERNATIONAL CONFERENCE ON VIRTUAL EXECUTION ENVIRONMENTS (VEE '21), 2021, : 165 - 171
  • [35] A dynamic binary translation system in a client/server environment
    Hsu, Chun-Chen
    Hong, Ding-Yong
    Hsu, Wei-Chung
    Liu, Pangfeng
    Wu, Jan-Jan
    JOURNAL OF SYSTEMS ARCHITECTURE, 2015, 61 (07) : 307 - 319
  • [36] A study on register mapping optimization in dynamic binary translation
    Liang Alei
    Li Jun
    Li Zengxiang
    Guan Haibing
    ADVANCED COMPUTER TECHNOLOGY, NEW EDUCATION, PROCEEDINGS, 2007, : 353 - 357
  • [37] Efficient and retargetable SIMD translation in a dynamic binary translator
    Fu, Sheng-Yu
    Hong, Ding-Yong
    Liu, Yu-Ping
    Wu, Jan-Jan
    Hsu, Wei-Chung
    SOFTWARE-PRACTICE & EXPERIENCE, 2018, 48 (06): : 1312 - 1330
  • [38] Research on Pipeline-Based Dynamic Binary Translation
    Liu, Jikun
    Cao, Gaojin
    Zhang, Hongguang
    2013 3RD INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND NETWORK TECHNOLOGY (ICCSNT), 2013, : 601 - 604
  • [39] GXBIT: Combining polyhedral model with dynamic binary translation
    Zhang, Kang
    Zhou, Fanfu
    Liang, Alei
    Journal of Theoretical and Applied Information Technology, 2012, 46 (01) : 88 - 92
  • [40] Return Instruction Analysis and Optimization in Dynamic Binary Translation
    Sun Tingtao
    Yang Yindong
    Yang Hongbo
    Guan Haibing
    Alei, Liang
    FCST 2009: PROCEEDINGS OF THE 4TH INTERNATIONAL CONFERENCE ON FRONTIER OF COMPUTER SCIENCE AND TECHNOLOGY, 2009, : 435 - 440