• DocumentCode
    3354789
  • Title

    Dynamic binary translation for accumulator-oriented architectures

  • Author

    Kim, Ho-Seop ; Smith, James E.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Wisconsin Univ., Madison, WI, USA
  • fYear
    2003
  • fDate
    23-26 March 2003
  • Firstpage
    25
  • Lastpage
    35
  • Abstract
    A dynamic binary translation system for a co-designed virtual machine is described and evaluated. The underlying hardware directly executes an accumulator-oriented instruction set that exposes instruction dependence chains (strands) to a distributed microarchitecture containing a simple instruction pipeline. To support conventional program binaries, a source instruction set (Alpha in our study) is dynamically translated to the target accumulator instruction set. The binary translator identifies chains of inter-instruction dependences and assigns them to dependence-carrying accumulators. Because the underlying superscalar microarchitecture is capable of dynamic instruction scheduling, the binary translation system does not perform aggressive optimizations or re-schedule code; this significantly reduces binary translation overhead. Detailed timing simulation of the dynamically translated code running on an accumulator-based distributed microarchitecture shows the overall system is capable of achieving similar performance to an ideal out-of-order superscalar processor, ignoring the significant clock frequency advantages that the accumulator-based hardware is likely to have. As part of the study, we evaluate an instruction set modification that simplifies precise trap implementation. This approach significantly reduces the number of instructions required for register state copying, thereby improving performance. We also observe that translation chaining methods can have substantial impact on the performance, and we evaluate a number of chaining methods.
  • Keywords
    computer architecture; instruction sets; program interpreters; virtual machines; accumulator-oriented instruction set; binary translator; distributed microarchitecture; dynamic binary translation; instruction pipeline; source instruction set; translation chaining; virtual machine; Clocks; Dynamic scheduling; Frequency; Hardware; Microarchitecture; Out of order; Pipelines; Processor scheduling; Timing; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization, 2003. CGO 2003. International Symposium on
  • Print_ISBN
    0-7695-1913-X
  • Type

    conf

  • DOI
    10.1109/CGO.2003.1191530
  • Filename
    1191530