DocumentCode
407070
Title
Using dynamic binary translation to fuse dependent instructions
Author
Hu, Shiliang ; Smith, James E.
Author_Institution
Dept. of Comput. Sci., Wisconsin Univ., Madison, WI, USA
fYear
2004
fDate
20-24 March 2004
Firstpage
213
Lastpage
224
Abstract
Instruction scheduling hardware can be simplified and easily pipelined if pairs of dependent instructions are fused so they share a single instruction scheduling slot. We study an implementation of the x86 ISA that dynamically translates x86 code to an underlying ISA that supports instruction fusing. A microarchitecture that is codesigned with the fused instruction set completes the implementation. We focus on the dynamic binary translator for such a codesigned x86 virtual machine. The dynamic binary translator first cracks x86 instructions belonging to hot superblocks into RISC-style microoperations, and then uses heuristics to fuse together pairs of dependent microoperations. Experimental results with SPEC2000 integer benchmarks demonstrate that: (1) the fused ISA with dynamic binary translation reduces the number of scheduling decisions by about 30% versus a conventional implementation that uses hardware cracking into RISC microoperations; (2) an instruction scheduling slot needs only hold two source register fields even though it may hold two instructions; (3) translations generated in the proposed ISA consume about 30% less storage than a corresponding fixed-length RISC-style ISA.
Keywords
instruction sets; processor scheduling; program interpreters; reduced instruction set computing; virtual machines; RISC-style microoperations; SPEC2000 integer benchmarks; codesigned x86 virtual machine; dynamic binary translator; fuse dependent instructions; fused instruction set; instruction scheduling hardware; microarchitecture; x86 ISA implementation; Clocks; Computer aided instruction; Dynamic scheduling; Fuses; Hardware; Instruction sets; Processor scheduling; Reduced instruction set computing; Testing; Virtual machining;
fLanguage
English
Publisher
ieee
Conference_Titel
Code Generation and Optimization, 2004. CGO 2004. International Symposium on
Print_ISBN
0-7695-2102-9
Type
conf
DOI
10.1109/CGO.2004.1281676
Filename
1281676
Link To Document