Early Page Predictor for Memory Paging Subsystem Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern high-performance processors face latency issues in reading data from caches due to the limitations of Virtually Indexed and Physically Tagged caches, which require address translation at the granularity of 4 KB pages, leading to increased lookup times and cache line management complexities.

Innovation Solution

An early page predictor (EPP) is introduced to predict the physical page address before address generation, using attributes like the instruction pointer, logical/physical register IDs, and source operand values to index into a predictor table, allowing for pre-lookup of physical page numbers and reducing dependency on effective address calculation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Virtually Indexed and Physically Tagged caches are used, then cache line management is improved, but address translation latency increases

Engineering Contradiction:
Improvecache line managementVSAvoidaddress translation latency
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent applies preliminary action by predicting the physical page number before the address translation is complete. The early page predictor uses attributes from the virtual address and instruction metadata to speculate on the physical page number in advance, allowing the cache system to prepare for the translation result before it arrives, thereby reducing the overall latency impact while maintaining improved cache line management

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If address translation at 4 KB page granularity is performed, then cache mapping precision is improved, but lookup time increases

Engineering Contradiction:
Improvecache mapping precisionVSAvoidlookup time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The early page predictor performs preliminary action by speculating on the physical page number using virtual address attributes and instruction metadata before the complete address translation is available. This allows the system to prepare cache lookup structures in advance, maintaining precise 4 KB page mapping while reducing the effective lookup time by overlapping prediction with translation

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If early page prediction is performed, then address translation latency is reduced, but prediction accuracy requirements increase

Engineering Contradiction:
Improveaddress translation latencyVSAvoidprediction accuracy
Core Design Contradiction:
Loss of timeVSMeasurement precision

Solution Approach 1:

The patent implements feedback by monitoring prediction outcomes and using the actual translation results to validate and refine future predictions. The system learns from prediction successes and failures, adjusting its prediction strategy based on feedback from the address translation unit, thereby managing the trade-off between reduced latency and maintained prediction accuracy through adaptive improvement

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10860319B2Apparatus and method for an early page predictor for a memory paging subsystem
Publication Date: 2020.12.08 INTEL CORP
  • US10860319B2 patent drawing
  • US10860319B2 patent drawing
  • US10860319B2 patent drawing

AI summary

An apparatus and method for early page address prediction. For example, one embodiment of a processor comprises: an instruction fetch circuit to fetch a load instruction; a decoder to decode the load instruction; execution circuitry to execute the load instruction to perform a load operation, the execution circuitry including an address generation unit (AGU) to generate an effective address to be used for the load operation; and early page prediction (EPP) circuitry to use one or more attributes associated with the load instruction to predict a physical page address for the load instruction simultaneously with the AGU generating the effective address and/or prior to generation of the effective address.