Embedded Page Size Hint for Address Translation Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory address translation systems in computers face performance overhead due to the need for frequent translations and large number of entries required to map memory address spaces, especially when handling multiple page sizes and processes, leading to slow access times and inefficient allocation of memory pages.

Innovation Solution

The system detects page faults by hardware translation logic and uses a page size hint encoded in an unused field of the virtual address to perform software address translation, optimizing memory allocation and reducing latency by guiding the search for address translation data and allocating appropriate page sizes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system uses a large number of address translation entries to map all memory address space, then the completeness of address translation is improved, but the access time and processing overhead increase significantly

Engineering Contradiction:
Improvecompleteness of address translationVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the large address translation data structure into multiple smaller, distributed hash tables or buckets. Each bucket contains a subset of the total entries, allowing the system to search only relevant portions rather than scanning the entire address space. This segmentation reduces the average search time while maintaining complete coverage of all memory address translations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system pre-computes and stores hash values or indexing information alongside address translation entries. When a translation request occurs, the system uses the pre-computed hash to directly locate the relevant bucket or subset of entries, eliminating the need for sequential searching. This preliminary organization of data significantly reduces access time while preserving all necessary translation mappings.

Inventive Principle:
Principle #10Preliminary action

2Speed

If the system caches address translation entries in high speed memory (TLB), then the access speed is improved, but the memory usage and cache eviction overhead increase

Engineering Contradiction:
Improveaccess speedVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent divides the translation lookaside buffer into multiple smaller, independent cache sets or buckets. Each set can independently cache translations for different address ranges or processes. This segmentation allows the system to maintain larger total cached entries across multiple sets without proportionally increasing the overhead for managing a single large cache, thereby improving access speed while controlling memory usage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent designs the TLB structure to handle multiple types of address translations (e.g., different page sizes, different address spaces) using a unified cache mechanism. By making the cache multi-functional, the system can serve diverse translation needs from a single shared resource pool, reducing the total memory required compared to having separate dedicated caches for each translation type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If the system performs software address translation to handle page faults, then the flexibility in handling multiple page sizes is improved, but the processing overhead and latency increase

Engineering Contradiction:
Improveflexibility in handling multiple page sizesVSAvoidprocessing overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent stores metadata indicating the page size associated with each address translation entry directly within the translation data structure or in adjacent storage. When a page fault occurs, the system can immediately retrieve the page size information from the local entry without performing extensive software analysis or consulting external configuration data. This localized storage of quality attributes reduces processing overhead while maintaining the ability to handle multiple page sizes flexibly.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10528476B2Embedded page size hint for page fault resolution
Publication Date: 2020.01.07 CAPROCK INTEGRATED TECHNOLOGIES LLC
  • US10528476B2 patent drawing
  • US10528476B2 patent drawing
  • US10528476B2 patent drawing

AI summary

A page size hint may be encoded into an unused and reserved field in an effective or virtual address for use by a software page fault handler when handling a page fault associated with the effective or virtual address to enable an application to communicate to an operating system or other software-based translation functionality page size preferences for the allocation of pages of memory and/or to accelerate the search for page table entries in a hardware page table.