发明名称 |
Performance in predicting branches |
摘要 |
A data processing system and computer program product for processing instructions. The instructions are processed by a processor unit while using a first table in a plurality of tables to predict a set of instructions needed by the processor unit after processing of a conditional instruction. An identification is formed that a rate of success in correctly predicting the set of instructions when using the first table is less than a threshold number. A sequence of the instructions being processed by the processor unit is searched for an instruction that matches a marker in a set of markers for identifying when to use the plurality of tables. An identification that the instruction that matches the marker is formed. A second table from the plurality of tables referenced by the marker is identified. The second table is used in place of the first table. |
申请公布号 |
US8972706(B2) |
申请公布日期 |
2015.03.03 |
申请号 |
US201113116515 |
申请日期 |
2011.05.26 |
申请人 |
International Business Machines Corporation |
发明人 |
Chen Wen-Tzer T.;Flemming Diane G.;Maron William A.;Srinivas Mysore S.;Whitworth David B. |
分类号 |
G06F15/00;G06F7/38;G06F9/00;G06F9/44;G06F9/38 |
主分类号 |
G06F15/00 |
代理机构 |
Yee & Associates, P.C. |
代理人 |
Yee & Associates, P.C. ;Josephs Damion |
主权项 |
1. A computer program product for processing instructions, the computer program product comprising:
a set of computer-readable storage devices; program code, stored on one of the set of computer-readable storage devices, configured to identify an order that the instructions would be executed by a processor unit during a simulation of a program while using a first table to predict a set of instructions needed by the processor unit after processing of a conditional instruction; program code, stored on one of the set of computer-readable storage devices, configured to identify a first instruction in the order where a first rate of success in predicting a next instruction needed by the processor unit after a first conditional instruction was less than a first threshold number; program code, stored on one of the set of computer-readable storage devices, configured to create a primary table having a set of table identifiers and a set of instruction identifiers, wherein the set of instruction identifiers identify instructions that mark a start of different phases of the program and the set of table identifiers identify tables to use for the different phases of the program; program code, stored on one of the set of computer-readable storage devices, configured to store information about a first set of instructions appearing in the order after a second conditional instruction into a second table, store an instruction identifier for the instruction as a marker in the primary table, and store a table identifier for the second table in association with the marker in the primary table in response to identifying the first instruction; and program code, stored on one of the set of computer-readable storage devices, configured to load the primary table during processing of the program for determining when to use the second table. |
地址 |
Armonk NY US |