发明名称 Auxiliary branch prediction with usefulness tracking
摘要 According to an aspect, management of auxiliary branch prediction in a processing system including a primary branch predictor and an auxiliary branch predictor is provided. A congruence class of the auxiliary branch predictor is located based on receiving a primary branch predictor misprediction indicator corresponding to a mispredicted target address of the primary branch predictor. An entry is identified in the congruence class having an auxiliary usefulness level set to a least useful level with respect to one or more other entries of the congruence class. Auxiliary data corresponding to the mispredicted target address is installed into the entry. The auxiliary usefulness level of the entry is reset to an initial value based on installing the auxiliary data.
申请公布号 US9507598(B1) 申请公布日期 2016.11.29
申请号 US201514969492 申请日期 2015.12.15
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 Bonanno James J.;Cadigan, Jr. Michael J.;Heizmann Matthias D.;Prasky Brian R.
分类号 G06F9/30 主分类号 G06F9/30
代理机构 Cantor Colburn LLP 代理人 Cantor Colburn LLP ;McNamara Margaret
主权项 1. A method for managing auxiliary branch prediction in a processing system comprising a primary branch predictor and an auxiliary branch predictor, the method comprising: locating a congruence class of the auxiliary branch predictor based on receiving a primary branch predictor misprediction indicator corresponding to a mispredicted target address of the primary branch predictor; identifying an entry in the congruence class having an auxiliary usefulness level set to a least useful level with respect to one or more other entries of the congruence class; installing auxiliary data corresponding to the mispredicted target address into the entry; resetting the auxiliary usefulness level of the entry to an initial value based on installing the auxiliary data; increasing the auxiliary usefulness level of the entry upon subsequently determining that the primary branch predictor misprediction indicator is set for the entry after the auxiliary data has been installed into the entry, and either the auxiliary branch predictor used the auxiliary data to correctly predict a branch or the auxiliary usefulness level of the entry is below a training threshold; reducing the auxiliary usefulness level equally for all entries of the congruence class based on determining that the auxiliary usefulness level of all entries of the congruence class is above a reduction threshold; and reducing the auxiliary usefulness level equally for all entries of the congruence class based on determining that the auxiliary usefulness level of two entries of the congruence class has reached a maximum value.
地址 Armonk NY US