Metadata Presence Table for Branch Prediction Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems face inefficiencies in branch prediction due to unnecessary access to higher-level metadata structures, leading to pipeline stalls and mispredictions, as they lack effective methods to determine when to access these structures based on metadata presence information.

Innovation Solution

The implementation of a computer-implemented method that uses metadata presence information to determine when to access a higher-level metadata table, avoiding unnecessary access by identifying incomplete hits and branch presence, thereby optimizing branch prediction and reducing pipeline stalls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the processor accesses higher-level metadata structures for every incomplete hit in the lower-level structure, then prediction accuracy may improve, but pipeline stalls and mispredictions increase due to unnecessary accesses

Engineering Contradiction:
Improveprediction accuracyVSAvoidpipeline stall time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by checking metadata presence information in the lower-level structure before accessing the higher-level structure. This preliminary check determines whether the higher-level access is actually needed, preventing unnecessary accesses that would cause pipeline stalls while maintaining the ability to access higher-level metadata when beneficial for prediction accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The metadata presence information acts as an intermediary between the lower-level and higher-level metadata structures. It mediates the access decision by providing information about what metadata is already available in the lower-level structure, thereby controlling when higher-level accesses are necessary and preventing unnecessary pipeline stalls.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the processor uses metadata presence information to avoid higher-level accesses, then pipeline stalls are reduced, but prediction accuracy may deteriorate if beneficial accesses are avoided

Engineering Contradiction:
Improveprocessor throughputVSAvoidprediction accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system uses feedback from metadata presence information to dynamically control higher-level accesses. The feedback mechanism allows the processor to learn which metadata entries in the lower-level structure are complete and which require higher-level access, thereby optimizing the balance between avoiding unnecessary stalls and maintaining prediction accuracy through selective higher-level accesses.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If the processor accesses higher-level metadata structures frequently, then more complete metadata information is obtained, but the complexity of metadata management increases

Engineering Contradiction:
Improvemetadata completenessVSAvoidmetadata structure complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The metadata management system is segmented into two hierarchical levels: a lower-level structure for frequently accessed metadata and a higher-level structure for more complete or specialized metadata. This segmentation allows the system to manage metadata complexity by keeping the lower-level structure simple and fast while using the higher-level structure only when needed for additional completeness.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11782919B2Using metadata presence information to determine when to access a higher-level metadata table
Publication Date: 2023.10.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11782919B2 patent drawing
  • US11782919B2 patent drawing
  • US11782919B2 patent drawing

AI summary

Embodiments are provided for using metadata presence information to determine when to access a higher-level metadata table. It is determined that an incomplete hit occurred for a line of metadata in a lower-level structure of a processor, the lower-level structure being coupled to a higher-level structure in a hierarchy. It is determined that metadata presence information in a metadata presence table is a match to the line of metadata from the lower-level structure. Responsive to determining the match, it is determined to avoid accessing the higher-level structure of the processor.