This paper presents a novel approach for dynamic binary translation (DBT) to automatically learn translation rules from guest and host binaries compiled from the same source code. The learned translation rules are then verified via binary symbolic execution and used in an existing DBT system, QEMU, to generate more efficient host binary code. Experimental results on SPEC CINT2006 showthat the average time of learning a translation rule is less than two seconds. With the rules learned from a collection of benchmark programs excluding the targeted program itself, an average 1.25X performance speedup over QEMU can be achieved for SPEC CINT2006. Moreover, the translation overhead introduced by this rule-based approach is very small even for shortrunning workloads.
|Original language||English (US)|
|Title of host publication||ASPLOS 2018 - 23rd International Conference on Architectural Support for Programming Languages and Operating Systems|
|Publisher||Association for Computing Machinery|
|Number of pages||14|
|State||Published - Mar 19 2018|
|Event||23rd International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2018 - Williamsburg, United States|
Duration: Mar 24 2018 → Mar 28 2018
|Name||ACM SIGPLAN Notices|
|Publisher||Association for Computing Machinery (ACM)|
|Other||23rd International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2018|
|Period||3/24/18 → 3/28/18|
Bibliographical noteFunding Information:
We are very grateful to David Grove and the anonymous reviewers for their valuable comments and feedback. This material is based upon work supported by the National Science Foundation under Grant No. CNS-1514444. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
- Rule learning
- Symbolic execution