9898299

Dynamic Thread Sharing in Branch Prediction Structures

PublishedFebruary 20, 2018
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
7 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer implemented method for dynamically evaluating how to share, among threads that are being tracked in a processor circuit, entries of a multithreaded branch prediction structure, the method comprising: receiving a search request to locate branch prediction information associated with said search request; searching, by said processor circuit, in a first-level branch prediction structure for conditionally matching first-level entries corresponding to the search request; said first-level entries each including a thread state; wherein the thread state comprises a first thread state portion having at least one data field that identifies either a share-state or a no-share state of threads that are being tracked in the processor circuit; wherein the thread state further comprises a second thread state portion having at least one data field that identifies context thread information of threads that are being tracked in the processor circuit; wherein conditionally matching first-level entries corresponding to the search request comprises satisfying either of a first condition or a second condition; wherein satisfying said first condition comprises determining that said at least one data field of said first thread state portion identifies said share-state; wherein satisfying said second condition comprises determining that said second thread state portion matches a portion of the search request; initially allowing, by said processor circuit, said conditionally matching first-level entries; and not allowing, by said processor circuit, specific ones of said conditionally matching first-level entries based on determining that said specific ones of said conditionally matching first-level entries previously caused a problem on at least one of threads corresponding to said thread states of said specific ones of said conditionally matching first-level entries.

2

2. The computer implemented method of claim 1 further comprising, in response to said problem, updating said first thread state portion of said each first-level entries.

3

3. The computer implemented method of claim 1 wherein said problem comprises a bad branch presence prediction associated with said at least one of the threads.

4

4. The computer implemented method of claim 1 wherein said first portion of said thread state comprises setting a thread sharing data field.

5

5. The computer implemented method of claim 1 wherein said at least one data field that identifies context thread information comprises a thread context tag.

6

6. The computer implemented method of claim 5 wherein: said determining comprises identifying a conflict mode; and said conflict mode comprises a mismatch between said thread context tag and said context state information.

7

7. The computer implemented method of claim 1 wherein: said branch prediction structure is hierarchical and includes: a second-level branch prediction structure; and the processor circuit communicatively coupled to the second-level branch prediction structure, wherein the method of claim 1 further comprises: based on failing to locate a matching first-level entry in the first-level branch prediction structure corresponding to the search request, initiating, by the processor circuit, a secondary search to locate matching second-level entries in the second-level branch prediction structure; said second level entries each including a second-level thread state; initially allowing, by said processor circuit, said conditionally matching second-level entries; and not allowing, by said processor circuit, specific ones of said conditionally matching second-level entries based on second-level threads state of said second-level specific ones indicating that said second-level specific ones of said conditionally matching second-level entries previously caused a problem on at least one of the threads corresponding to said second-level thread states.

Patent Metadata

Filing Date

Unknown

Publication Date

February 20, 2018

Inventors

James J. Bonanno
Daniel Lipetz
Brian R. Prasky
Anthony Saporito

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “DYNAMIC THREAD SHARING IN BRANCH PREDICTION STRUCTURES” (9898299). https://patentable.app/patents/9898299

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.