Global weak pattern history table filtering

US9229723B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9229723-B2
Application numberUS-201213492946-A
CountryUS
Kind codeB2
Filing dateJun 11, 2012
Priority dateJun 11, 2012
Publication dateJan 5, 2016
Grant dateJan 5, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments relate to global weak pattern history table (PHT) filtering. An aspect includes receiving a search address associated with a branch prediction, and receiving a prediction strength indicator and a tag from a PHT. Based on determining that the tag matches the search address and the prediction strength indicator is weak, an accuracy counter is compared to a comparison threshold to determine whether a PHT direction prediction from the PHT is more likely accurate than a branch history table (BHT) direction prediction from a BHT. The PHT direction prediction is selected as a direction prediction based on determining that the accuracy counter indicates that the PHT direction prediction is more likely accurate than the BHT direction prediction. The BHT direction prediction is selected as the direction prediction based on determining that the accuracy counter indicates that the BHT direction prediction is more likely accurate than the PHT direction prediction.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product for pattern history table filtering, the computer program product comprising: a non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising: receiving a search address associated with a branch prediction; receiving a prediction strength indicator and a tag from a pattern history table, the prediction strength indicator having a value of weak or strong defined relative to a pattern history table direction prediction of a corresponding branch as taken or not taken, wherein the prediction strength indicator transitions between weak and strong based on receiving a resolved branch indication of taken or not taken such that a combination of the prediction strength indicator and the pattern history table direction prediction supports transitions between a range of predictions comprising: strong not taken, weak not taken, weak taken, and strong taken; determining, by the processing circuit, whether a pattern history table match exists based on the tag matching the search address; based on determining that the pattern history table match exists and the prediction strength indicator is weak, comparing an accuracy counter to a comparison threshold to determine by the processing circuit whether the pattern history table direction prediction from the pattern history table is more likely accurate than a branch history table direction prediction from a branch history table; selecting, by the processing circuit, the pattern history table direction prediction as a direction prediction based on determining that the accuracy counter indicates that the pattern history table direction prediction is more likely accurate than the branch history table direction prediction, the pattern history table match exists, and the prediction strength indicator is weak; selecting, by the processing circuit, the branch history table direction prediction as the direction prediction based on determining that the accuracy counter indicates that the branch history table direction prediction is more likely accurate than the pattern history table direction prediction, the pattern history table match exists, and the prediction strength indicator is weak; selecting, by the processing circuit, the pattern history table direction prediction as the direction prediction based on determining that the pattern history table match exists and the prediction strength indicator is strong; and selecting, by the processing circuit, the branch history table direction prediction as the direction prediction based on determining that the pattern history table match does not exist. 2. The computer program product of claim 1 , the method further comprising: receiving the resolved branch indication; and based on determining that the pattern history table match exists and the prediction strength indicator is weak: modifying the accuracy counter in a direction towards indicating that the pattern history table direction prediction is more likely accurate than the branch history table direction prediction based on the pattern history table direction prediction matching the resolved branch indication and the branch history table direction prediction not matching the resolved branch indication; and modifying the accuracy counter in an opposite direction towards indicating that the branch history table direction prediction is more likely accurate than the pattern history table direction prediction based on the branch history table direction prediction matching the resolved branch indication and the pattern history table direction prediction not matching the resolved branch indication. 3. The computer program product of claim 1 , the method further comprising: updating the branch history table based on determining that the branch history table direction prediction was selected as the direction prediction; and updating the pattern history table based on determining that the pattern history table match exists to adjust one or more of: the prediction strength indicator and the pattern history table direction prediction. 4. The computer program product of claim 1 , the method further comprising: installing a new entry in the pattern history table based on determining that the branch history table direction prediction was selected as the direction prediction, the branch history table direction prediction did not match the resolved branch indication, and the pattern history table match does not exist. 5. The computer program product of claim 1 , the method further comprising: receiving a second prediction strength indicator and a second tag from a second pattern history table; determining, by the processing circuit, that a second pattern history table match exists based on the second tag matching the search address; based on determining that the second pattern history table match exists and the second prediction strength indicator is weak, comparing a second accuracy counter to the comparison threshold to determine by the processing circuit whether a second pattern history table direction prediction is more likely accurate than the branch history table direction prediction; and selecting, by the processing circuit, one of: the pattern history table direction prediction and the second pattern history table direction prediction as the direction prediction. 6. A computer-implemented method for pattern history table filtering, the method comprising: receiving a search address associated with a branch prediction; receiving a prediction strength indicator and a tag from a pattern history table, the prediction strength indicator having a value of weak or strong defined relative to a pattern history table direction prediction of a corresponding branch as taken or not taken, wherein the prediction strength indicator transitions between weak and strong based on receiving a resolved branch indication of taken or not taken such that a combination of the prediction strength indicator and the pattern history table direction prediction supports transitions between a range of predictions comprising: strong not taken, weak not taken, weak taken, and strong taken; determining, by a computer, whether a pattern history table match exists based on the tag matching the search address; based on determining that the pattern history table match exists and the prediction strength indicator is weak, comparing an accuracy counter to a comparison threshold to determine by the processing circuit whether the pattern history table direction prediction from the pattern history table is more likely accurate than a branch history table direction prediction from a branch history table; selecting, by the computer, the pattern history table direction prediction as a direction prediction based on determining that the accuracy counter indicates that the pattern history table direction prediction is more likely accurate than the branch history table direction prediction, the pattern history table match exists, and the prediction strength indicator is weak; selecting, by the computer, the branch history table direction prediction as the direction prediction based on determining that the accuracy counter indicates that the branch history table direction prediction is more likely accurate than the pattern history table direction prediction, the pattern history table match exists, and the prediction strength indicator is weak; selecting, by the processing circuit, the pattern history table direction prediction as the direction prediction based on determining that the pattern history table match exists and the prediction strength indicator is strong; and selecting, by the processing circuit, the branch history table direction prediction as the d

Assignees

Inventors

Classifications

  • using hybrid branch prediction, e.g. selection between prediction techniques · CPC title

  • G06F9/3806Primary

    using address prediction, e.g. return stack, branch history buffer · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9229723B2 cover?
Embodiments relate to global weak pattern history table (PHT) filtering. An aspect includes receiving a search address associated with a branch prediction, and receiving a prediction strength indicator and a tag from a PHT. Based on determining that the tag matches the search address and the prediction strength indicator is weak, an accuracy counter is compared to a comparison threshold to dete…
Who is the assignee on this patent?
Bonanno James J, Prasky Brian R, IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/3806. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 05 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).