Partial Cross-Compilation and Mixed Execution for Accelerating Dynamic Binary Translation
Yuhao Gu, Zhongchun Zheng, Nong Xiao, Yutong Lu, Xianwei Zhang

TL;DR
This paper introduces a hybrid execution system combining cross-compilation and emulation to improve dynamic binary translation performance, achieving up to 13x speedups by selectively offloading functions.
Contribution
It presents a novel hybrid execution approach with selective function offloading, addressing limitations of all-or-nothing cross-compilation and enhancing DBT efficiency.
Findings
Achieves up to 13x speedup over existing DBT solutions.
Automatically works for applications and libraries built on LLVM and QEMU.
Addresses offloading costs with key optimizations.
Abstract
With the growing diversity of instruction set architectures (ISAs), cross-ISA program execution has become common. Dynamic binary translation (DBT) is the main solution but suffers from poor performance. Cross-compilation avoids emulation costs but is constrained by an "all-or-nothing" model-programs are either fully cross-compiled or entirely emulated. Complete cross-compilation is often unfeasible due to ISA-specific code or missing dependencies, leaving programs with high emulation overhead. We propose a hybrid execution system that combines compilation and emulation, featuring a selective function offloading mechanism. This mechanism establishes cross-environment calling channels, offloading eligible functions to the host for native execution to reduce DBT overhead. Key optimizations address offloading costs, enabling efficient hybrid operation. Built on LLVM and QEMU, the system…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Logic, programming, and type systems · Security and Verification in Computing
