9836304

Cumulative Confidence Fetch Throttling

PublishedDecember 5, 2017
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
17 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method comprising: identifying a plurality of confidence measures for a plurality of outstanding conditional branch instructions along a predicted path, each of the plurality of confidence measures comprising a percentage value between zero and one hundred percent, a first of the plurality of confidence measures different from a second of the plurality of confidence measures; calculating a cumulative confidence measure based on a multiplication of the plurality of confidence measures including the first and second of the plurality of confidence measures; recalculating, after a completion of one of the plurality of outstanding conditional branch instructions, the cumulative confidence measure for a remainder of the plurality of outstanding conditional branch instructions along the predicted path; and reducing prefetching operations in response to detecting that the cumulative confidence measure is below a first threshold level.

Plain English Translation

A method for improving processor efficiency reduces unnecessary prefetching when speculative execution of branch instructions is likely incorrect. The method identifies multiple conditional branch instructions that haven't completed yet. For each, it determines a confidence score (0-100%). These scores are multiplied together to get a cumulative confidence measure. After a branch instruction finishes, the cumulative confidence is recalculated for the remaining branches. If the cumulative confidence falls below a threshold, the processor reduces prefetching operations to save power.

Claim 2

Original Legal Text

2. The method of claim 1 , further comprising: recalculating the cumulative confidence measure in response to completion of another one of the plurality of outstanding conditional branch instructions; and increasing fetching operations in response to detecting that the recalculated cumulative confidence measure is above or equal to a second threshold level.

Plain English Translation

The method described above also recalculates the cumulative confidence measure each time another branch instruction completes. In addition to reducing prefetching when the cumulative confidence is low, the method increases prefetching operations if the recalculated cumulative confidence is above or equal to a second threshold level. This allows the processor to resume aggressive prefetching when branch predictions become more reliable, balancing power consumption and performance.

Claim 3

Original Legal Text

3. The method of claim 2 , wherein the first threshold level and the second threshold level are different values.

Plain English Translation

In the method for dynamically adjusting prefetching based on branch confidence described above, the first threshold used to reduce prefetching, and the second threshold used to increase prefetching, are different values. This difference introduces hysteresis, preventing rapid switching between prefetching states and improving stability.

Claim 4

Original Legal Text

4. The method of claim 2 , wherein the plurality of outstanding branch instructions are executed in program order.

Plain English Translation

In the method for dynamically adjusting prefetching based on branch confidence described above, the outstanding branch instructions are executed in program order. This means the branches are resolved in the same sequence as they appear in the program code.

Claim 5

Original Legal Text

5. The method of claim 2 , wherein the plurality of outstanding branch instructions are executed out of program order.

Plain English Translation

In the method for dynamically adjusting prefetching based on branch confidence described above, the outstanding branch instructions are executed out of program order. This means the processor can execute later instructions before earlier ones if dependencies allow.

Claim 6

Original Legal Text

6. The method of claim 2 , wherein at least one of the first threshold level and the second threshold level is programmable.

Plain English Translation

In the method for dynamically adjusting prefetching based on branch confidence described above, at least one of the threshold levels (the one to reduce prefetching, or the one to increase prefetching) is programmable. This allows for tuning the prefetching behavior based on the specific workload and processor characteristics.

Claim 7

Original Legal Text

7. An apparatus comprising: a processor configured to: identify a plurality of confidence measures for a plurality of outstanding conditional branch instructions along a predicted path, each of the plurality of confidence measures comprising a percentage value between zero and one hundred percent, a first of the plurality of confidence measures different from a second of the plurality of confidence measures; calculate a cumulative confidence measure based on a multiplication of the plurality of confidence measures including the first and the second of the plurality of confidence measures; recalculate, after a completion of one of the plurality of outstanding conditional branch instructions, the cumulative confidence measure for a remainder of the plurality of outstanding conditional branch instructions along the predicted path; and reduce prefetching operations in response to detecting that the cumulative confidence measure is below a first threshold level.

Plain English Translation

A processor includes logic to reduce unnecessary prefetching related to speculative branch execution. The processor determines confidence scores (0-100%) for multiple uncompleted conditional branch instructions. These scores are multiplied to create a cumulative confidence measure. After a branch instruction completes, the cumulative confidence is recalculated for the remaining branches. The processor reduces prefetching when the cumulative confidence falls below a certain threshold. The confidence scores for different branch instructions can be different.

Claim 8

Original Legal Text

8. The apparatus of claim 7 , wherein the processor is further configured to: recalculate the cumulative confidence measure in response to completion of another one of the plurality of outstanding conditional branch instructions; and increase fetching operations in response to detecting that the recalculated cumulative confidence measure is above or equal to a second threshold level.

Plain English Translation

The processor described above also recalculates the cumulative confidence each time another branch instruction completes. In addition to reducing prefetching when cumulative confidence is low, the processor also increases prefetching when the recalculated cumulative confidence reaches or exceeds a second threshold. This ensures prefetching resumes when branch predictions improve.

Claim 9

Original Legal Text

9. The apparatus of claim 8 , wherein the first threshold level and the second threshold level are different values.

Plain English Translation

In the processor that dynamically adjusts prefetching based on branch confidence described above, the first threshold used to reduce prefetching, and the second threshold used to increase prefetching, are different values. This difference prevents rapid state switching of prefetching.

Claim 10

Original Legal Text

10. The apparatus of claim 8 , wherein the plurality of outstanding branch instructions are executed in program order.

Plain English Translation

In the processor that dynamically adjusts prefetching based on branch confidence described above, the branch instructions are executed in program order, meaning the branches are resolved in the order they appear in program code.

Claim 11

Original Legal Text

11. The apparatus of claim 8 , wherein the plurality of outstanding branch instructions are executed out of program order.

Plain English Translation

In the processor that dynamically adjusts prefetching based on branch confidence described above, the branch instructions are executed out of program order. The processor can execute later instructions before earlier ones if dependencies allow.

Claim 12

Original Legal Text

12. The apparatus of claim 8 , wherein at least one of the first threshold level and the second threshold level is programmable.

Plain English Translation

In the processor that dynamically adjusts prefetching based on branch confidence described above, at least one of the thresholds (prefetching reduction or increase) is programmable, enabling tuning based on workload and processor characteristics.

Claim 13

Original Legal Text

13. A non-transitory computer readable storage medium encoded with data that, when implemented in a manufacturing facility, adapts the manufacturing facility to create an apparatus, comprising: a processor configured to: identify a plurality of confidence measures for a plurality of outstanding conditional branch instructions along a predicted path, each of the plurality of confidence measures comprising a percentage value between zero and one hundred percent, a first of the plurality of confidence measures different from a second of the plurality of confidence measures; calculate a cumulative confidence measure based on a multiplication of the plurality of confidence measures including the first and second of the plurality of confidence measures; recalculate, after a completion of one of the plurality of outstanding conditional branch instructions, the cumulative confidence measure for a remainder of the plurality of outstanding conditional branch instructions along the predicted path; and reduce prefetching operations in response to detecting that the cumulative confidence measure is below a first threshold level.

Plain English Translation

A computer-readable storage medium contains instructions that, when used in a manufacturing facility, will create a processor to reduce unnecessary prefetching related to speculative branch execution. The processor will determine confidence scores (0-100%) for multiple uncompleted conditional branch instructions, which are then multiplied to get a cumulative confidence. This confidence is recalculated after each branch completion. The processor will reduce prefetching when this cumulative confidence falls below a threshold. The confidence scores for different branch instructions can be different.

Claim 14

Original Legal Text

14. The computer readable storage medium of claim 13 , wherein the processor is further configured to: recalculate the cumulative confidence measure in response to completion of another one of the plurality of outstanding conditional branch instructions; and increase fetching operations in response to detecting that the recalculated cumulative confidence measure is above or equal to a second threshold level.

Plain English Translation

The storage medium described above creates a processor that also recalculates the cumulative confidence each time another branch instruction completes. In addition to reducing prefetching when the cumulative confidence is low, the processor increases prefetching when the recalculated cumulative confidence reaches or exceeds a second threshold, to resume prefetching when branch prediction improves.

Claim 15

Original Legal Text

15. The computer readable storage medium of claim 14 , wherein the first threshold level and the second threshold level are different values.

Plain English Translation

A system and method for managing data storage and retrieval involves a computer-readable storage medium that stores executable instructions for processing data. The system includes a data storage device and a processor configured to execute the instructions to perform operations related to data handling. These operations include determining whether data meets a first threshold level and a second threshold level, where the first and second threshold levels are distinct values. Based on these determinations, the system performs specific actions, such as storing, retrieving, or modifying the data. The system may also include a user interface for configuring the threshold levels and monitoring the data processing operations. The method ensures efficient data management by dynamically adjusting the threshold levels to optimize storage and retrieval performance. The system is particularly useful in environments where data volume and access patterns vary, requiring adaptive threshold-based processing to maintain efficiency and reliability. The distinct threshold values allow for fine-grained control over data handling, enabling the system to respond to different operational conditions and user requirements.

Claim 16

Original Legal Text

16. The computer readable storage medium of claim 14 , wherein the plurality of outstanding branch instructions are executed out of program order.

Plain English Translation

In the storage medium containing instructions to create a processor that dynamically adjusts prefetching based on branch confidence, the branch instructions are executed out of program order, where the processor can execute later instructions before earlier ones if dependencies allow.

Claim 17

Original Legal Text

17. The computer readable storage medium of claim 14 , wherein at least one of the first threshold level and the second threshold level is programmable.

Plain English Translation

In the storage medium containing instructions to create a processor that dynamically adjusts prefetching based on branch confidence, at least one of the thresholds (prefetching reduction or increase) is programmable, allowing tuning based on workload and processor characteristics.

Patent Metadata

Filing Date

Unknown

Publication Date

December 5, 2017

Inventors

Marvin Denman
James Dundas
Bradley Gene Burgess
Jeff Rupley

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, FAQs, 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. “CUMULATIVE CONFIDENCE FETCH THROTTLING” (9836304). https://patentable.app/patents/9836304

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/9836304. See llms.txt for full attribution policy.