Hardware TLB Retry Loop for Page Migration Translation Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing processing systems experience performance degradation due to software client-initiated retry loops during page migration, which prevents additional tasks from being executed while waiting for TLB hits or error handling.

Innovation Solution

A hardware TLB retry loop is implemented that independently retries translation requests after a programmable delay, allowing TLB shootdown requests to bypass other requests in the FIFO queue, thereby preventing stale translations and improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software client-initiated retry loops are used during page migration, then TLB translation accuracy is maintained, but processing efficiency deteriorates due to performance degradation and prevention of additional task execution

Engineering Contradiction:
ImproveTLB translation accuracyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The hardware retry loop mechanism operates autonomously without requiring software client intervention. When a TLB miss occurs during page migration, the hardware automatically initiates retry attempts using stored virtual addresses, eliminating the need for software clients to implement and execute retry loops, thus resolving the contradiction between maintaining translation accuracy and preserving processing efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces a hardware intermediary component (the retry loop mechanism) that sits between the TLB and software clients. This intermediary automatically handles the retry logic that previously required software intervention, allowing software clients to proceed with additional tasks while the hardware manages translation recovery independently

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If software clients wait for TLB hits during page migration, then translation accuracy is ensured, but wait times increase preventing execution of additional tasks

Engineering Contradiction:
Improvetranslation accuracyVSAvoidwait times
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The hardware retry loop pre-loads and stores virtual addresses in a buffer when TLB misses occur during page migration. This preliminary action allows the hardware to immediately retry translations using stored addresses without requiring software clients to wait, thereby reducing wait times while maintaining translation accuracy through systematic retry attempts

Inventive Principle:
Principle #10Preliminary action

3Stability of the object's composition

If TLB shootdown requests are processed in FIFO order, then request ordering is maintained, but stale translations occur when shootdown requests are blocked by retry requests

Engineering Contradiction:
Improverequest orderingVSAvoidtranslation accuracy
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent implements dynamic request prioritization where TLB shootdown requests can bypass retry requests in the FIFO queue when detected. This dynamic reordering ensures that invalidation operations (shootdowns) are not blocked by retry operations, preventing stale translations from being returned while maintaining overall system stability through controlled queue management

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12124381B2Hardware translation request retry mechanism
Publication Date: 2024.10.22 ATI TECHNOLOGIES ULC
  • US12124381B2 patent drawing
  • US12124381B2 patent drawing
  • US12124381B2 patent drawing

AI summary

A processing system includes a hardware translation lookaside buffer (TLB) retry loop that retries virtual memory address to physical memory address translation requests from a software client independent of a command from the software client. In response to a retry response notification at the TLB, a controller of the TLB waits for a programmable delay period and then retries the request without involvement from the software client. After a retry results in a hit at the TLB, the controller notifies the software client of the hit. Alternatively, if a retry results in an error at the TLB, the controller notifies the software client of the error and the software client initiates error handling.