发明名称 Method and apparatus for using static branch predictions hints with dynamically translated code traces to improve performance
摘要 A run-time optimization strategy uses a trace picker to identify traces of program code in a native code pool, and a translator to translate the traces into a code cache where the traces are executed natively. Static branch prediction hints are encoded in branch instruction in the translated traces. A program module implementing the present invention is initialized with an empty code cache and a pool of instruction in a native code pool. The trace picker analyzes the instructions in the native code pool and identifies traces of instructions that tend to be executed as a group. When a trace is identified, basic blocks lying along the trace path are translated into a code cache, with static branch predictions encoded into the branch instructions of the basic blocks based on branching behavior observed when the trace is identified. Control then passes to the basic blocks in the code cache, and the basic blocks in the code cache are executed natively using the static branch prediction hints encoded into the branch instructions.
申请公布号 US6205545(B1) 申请公布日期 2001.03.20
申请号 US19980070585 申请日期 1998.04.30
申请人 HEWLETT-PACKARD COMPANY 发明人 SHAH LACKY V.;MATTSON, JR. JAMES S.;BUZBEE WILLIAM B.
分类号 G06F9/38;(IPC1-7):G06F9/32 主分类号 G06F9/38
代理机构 代理人
主权项
地址