Dynamic binary translation for accumulator-oriented architectures

被引:19
作者
Kim, HS [1 ]
Smith, JE [1 ]
机构
[1] Univ Wisconsin, Dept Elect & Comp Engn, Madison, WI 53706 USA
来源
CGO 2003: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION | 2003年
关键词
D O I
10.1109/CGO.2003.1191530
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:25 / 35
页数:11
相关论文
共 46 条
[1]  
Altman E., 2000, 21665 IBM RC
[2]  
[Anonymous], 2000, Proceedings of the 15th ACM SIGPLAN Conference on Objectoriented Programming, Systems, Languages, and Applications
[3]  
BALA V, 1999, HPL199978
[4]  
BALA V, 2000, P ACM SIGPLAN C PROG, P1, DOI DOI 10.1145/349299.349303
[5]   THREADED CODE [J].
BELL, JR .
COMMUNICATIONS OF THE ACM, 1973, 16 (06) :370-372
[6]  
BRUENING D, 2001, P 4 WORKSH FEEDB DIR
[7]  
BURGER D, 1997, CSTR971342 U WISC
[8]  
CHEN WK, 2000, P 3 ACM WORKSH FEEDB
[9]   FX!32 - A profile-directed binary translator [J].
Chernoff, A ;
Herdeg, M ;
Hookway, R ;
Reeve, C ;
Rubin, N ;
Tye, T ;
Yadavalli, SB ;
Yates, J .
IEEE MICRO, 1998, 18 (02) :56-64
[10]  
Chou Y, 2000, PROCEEDING OF THE 27TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, P270, DOI 10.1145/342001.339694