Hot Page Detection Using MMU A/D Bits for Memory Tiering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for hot and cold page tracking in computing systems are inefficient in determining frequently accessed data, leading to suboptimal memory management and access times, as they rely on periodic scanning and induced page faults, which can be resource-intensive and inaccurate.

Innovation Solution

A hot page detection system utilizing counters and histograms to identify frequently accessed pages, allowing for real-time tracking and migration of data between different levels of memory, such as DDR5 and CXL attached memory, to optimize data access by mapping frequently accessed virtual pages to physical pages in lower latency memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If periodic scanning and induced page faults are used to track hot and cold pages, then page access activity can be determined, but resource consumption increases and accuracy decreases

Engineering Contradiction:
Improvepage access activity detection accuracyVSAvoidresource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system uses self-service by leveraging existing CPU A/D bits that are automatically updated during normal memory operations. The MMU hardware automatically generates A/D assists and TLB shootdowns that update these bits without requiring external intervention, making the tracking system self-sustaining and resource-efficient

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces mechanical scanning operations with hardware-based automatic tracking. Instead of periodically scanning memory pages through software, the system uses MMU hardware mechanisms (A/D assists, TLB shootdowns) that automatically update A/D bits in page tables, eliminating the need for resource-intensive scanning operations

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Ease of operation

If OS periodically scans A/D bits to determine page aging, then cold page tracking can be performed, but system performance deteriorates due to scanning overhead

Engineering Contradiction:
Improvecold page tracking capabilityVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system eliminates the need for OS-initiated scanning by using hardware mechanisms that automatically update A/D bits during normal memory operations. The MMU generates A/D assists and TLB shootdowns that continuously maintain accurate page access information without requiring OS intervention or periodic scanning

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements continuous tracking of page access activity through hardware mechanisms that operate continuously during normal system operation. Instead of periodic scanning that interrupts system operation, the MMU continuously updates A/D bits as memory accesses occur, providing uninterrupted and accurate cold page tracking

Inventive Principle:
Principle #20Continuity of useful action

3Measurement precision

If Linux Memory Tiering induces page faults by un-mapping pages, then hot page tracking can be performed, but access time increases and system efficiency decreases

Engineering Contradiction:
Improvehot page detection accuracyVSAvoidpage access time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system uses self-service by leveraging existing CPU A/D bits that are automatically updated during normal memory operations. The MMU hardware automatically generates A/D assists and TLB shootdowns that update these bits without requiring external intervention, making the tracking system self-sustaining and resource-efficient

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces mechanical scanning operations with hardware-based automatic tracking. Instead of periodically scanning memory pages through software, the system uses MMU hardware mechanisms (A/D assists, TLB shootdowns) that automatically update A/D bits in page tables, eliminating the need for resource-intensive scanning operations

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Quantity of substance

If data is stored in higher latency memory to increase capacity, then memory bandwidth is improved, but data access time increases

Engineering Contradiction:
Improvememory capacityVSAvoiddata access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent implements dynamic memory management by continuously monitoring A/D bits and automatically migrating pages between memory tiers based on their access characteristics. Hot pages are dynamically moved to lower latency memory, while cold pages remain in higher capacity memory, creating a dynamic adaptation to changing workload patterns

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system applies local quality by treating different memory pages differently based on their access patterns. Instead of uniformly storing all data in the same memory tier, the system identifies hot pages through A/D bit tracking and allocates them to lower latency memory, while cold pages are kept in higher capacity memory, optimizing the local storage location for each page based on its specific access characteristics

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20230044342A1Detection of memory accesses
Publication Date: 2023.02.09 INTEL CORP
  • US20230044342A1 patent drawing
  • US20230044342A1 patent drawing
  • US20230044342A1 patent drawing

AI summary

Examples described herein relate to dynamically adjust a manner of identifying hot pages in a remote memory pool based on adjustment of parameters of a data structure. In some examples, the parameters of the data structure include a range of number of access counts and a number of pages associated with the range.