CoDBT: A multi-source dynamic binary translator using hardware-software collaborative techniques

  • Authors:
  • Haibing Guan;Bo Liu;Zhengwei Qi;Yindong Yang;Hongbo Yang;Alei Liang

  • Affiliations:
  • Shanghai Jiao Tong University, Shanghai 200240, China;Shanghai Jiao Tong University, Shanghai 200240, China;Shanghai Jiao Tong University, Shanghai 200240, China;Shanghai Jiao Tong University, Shanghai 200240, China;Shanghai Jiao Tong University, Shanghai 200240, China;Shanghai Jiao Tong University, Shanghai 200240, China

  • Venue:
  • Journal of Systems Architecture: the EUROMICRO Journal
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

For implementing a dynamic binary translation system, traditional software-based solutions suffer from significant runtime overhead and are not suitable for extra complex optimization. This paper proposes using hardware-software collaboration techniques to create an high efficient dynamic binary translation system, CoDBT, which emulates several heterogeneous ISAs (Instruction Set Architectures) on a host processor without changing to the existing processor. We analyze the major performance bottlenecks via evaluating overhead of a pure software-solution DBT. Guidelines are provided for applying a suitable hardware-software partition process to CoDBT, as are algorithms for designing hardware-based binary translator and code cache management. An intermediate instruction set is introduced to make multi-source translation more practicable and scalable. Meantime, a novel runtime profiling strategy is integrated into the infrastructure to collect program hot spots information to supporting potential future optimizations. The advantages of using co-design as an implementation approach for DBT system are assessed by several SPEC benchmarks. Our results demonstrate that significant performance improvements can be achieved with appropriate hardware support choices. CoDBT could be an efficient and cost-effective solution for situations where the usual methods of performance acceleration for dynamic binary translation are inappropriate.