Binary translation using peephole superoptimizers

  • Authors:
  • Sorav Bansal;Alex Aiken

  • Affiliations:
  • Computer Systems Lab, Stanford University;Computer Systems Lab, Stanford University

  • Venue:
  • OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a new scheme for performing binary translation that produces code comparable to or better than existing binary translators with much less engineering effort. Instead of hand-coding the translation from one instruction set to another, our approach automatically learns translation rules using superoptimization techniques. We have implemented a PowerPC-x86 binary translator and report results on small and large computeintensive benchmarks. When compared to the native compiler, our translated code achieves median performance of 67% on large benchmarks and in some small stress tests actually outperforms the native compiler. We also report comparisons with the open source binary translator Qemu and a commercial tool, Apple's Rosetta. We consistently outperformthe former and are comparable to or faster than the latter on all but one benchmark.