Register-Dependent Identifier Generation for Prediction Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing prediction apparatuses face inefficiencies in training due to inadequate identifier value generation methods, particularly in handling loop unrolling and address distance-based schemes, leading to inefficient use of prediction storage and reduced accuracy.

Innovation Solution

An apparatus with an input interface for receiving training events, using identifier value generation circuitry to generate identifier values based on at least one register referenced by a program instruction, and matching circuitry to update training data in prediction storage, optimizing the allocation and use of entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If address distance-based schemes are used for identifier value generation, then the prediction apparatus can handle loop unrolling, but duplicate entries are created leading to inefficient use of prediction storage

Engineering Contradiction:
Improvehandling loop unrollingVSAvoidprediction storage efficiency
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent changes the parameter used for identifier generation from address-distance-based values to register-dependent values. This parameter change allows the system to maintain adaptability to loop unrolling while eliminating duplicate entry creation, as register values provide a more stable and unique identification mechanism across loop iterations.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent uses register values as a copy or representation of the instruction's operational context rather than relying on address distances. This copying approach creates a more accurate fingerprint of the instruction's behavior, preventing duplicate entries while maintaining loop unrolling handling capability.

Inventive Principle:
Principle #26Copying

2Productivity

If traditional identifier value generation is used, then the training process is simpler, but the accuracy of predictions is reduced

Engineering Contradiction:
Improvetraining process efficiencyVSAvoidprediction accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent introduces register-dependent identifier values as an intermediary between the training event and the prediction storage entries. This intermediary provides more discriminating information than traditional methods, improving prediction accuracy while maintaining training process efficiency through automated identifier generation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the identification parameter from coarse address-distance metrics to finer-grained register-dependent values. This parameter refinement improves prediction accuracy by better distinguishing between different training events while the automated generation process maintains training efficiency.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If more prediction storage entries are created to handle diverse training events, then prediction accuracy improves, but the device complexity increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidprediction storage structure
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent changes the identifier generation parameter to register-dependent values, which naturally provides better discrimination among training events. This reduces the need for additional storage entries to achieve the same level of prediction accuracy, thereby reducing device complexity while maintaining or improving prediction precision.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11580032B2Technique for training a prediction apparatus
Publication Date: 2023.02.14 ARM LTD
  • US11580032B2 patent drawing
  • US11580032B2 patent drawing
  • US11580032B2 patent drawing

AI summary

A technique is provided for training a prediction apparatus. The apparatus has an input interface for receiving a sequence of training events indicative of program instructions, and identifier value generation circuitry for performing an identifier value generation function to generate, for a given training event received at the input interface, an identifier value for that given training event. The identifier value generation function is arranged such that the generated identifier value is dependent on at least one register referenced by a program instruction indicated by that given training event. Prediction storage is provided with a plurality of training entries, where each training entry is allocated an identifier value as generated by the identifier value generation function, and is used to maintain training data derived from training events having that allocated identifier value. Matching circuitry is then responsive to the given training event to detect whether the prediction storage has a matching training entry (i.e. an entry whose allocated identifier value matches the identifier value for the given training event). If so, it causes the training data in the matching training entry to be updated in dependence on the given training event.