Memory-Sampling Page Cache Migration for Latency-Capacity Trade-offs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Determining how to allocate memory pages across multiple levels of memory in computing systems is challenging due to differences in performance, cost, and resiliency, particularly in systems with high-bandwidth stacked memories and traditional off-package memory, where latency and bandwidth requirements need to be balanced with capacity considerations.

Innovation Solution

A system that records metadata from memory access instructions, predicts which pages will be accessed in subsequent intervals, and migrates pages between memory levels based on access frequencies, using a multi-level memory hierarchy with a fast, limited first level and a larger, slower second level, while optionally adjusting sampling intervals based on memory accesses or page faults.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If memory pages are allocated to faster memory level, then latency is reduced and bandwidth is increased, but capacity is limited

Engineering Contradiction:
Improvememory access latencyVSAvoidmemory capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The memory system is segmented into multiple levels (fast stacked memory and slower off-chip memory), with the patent allocating frequently accessed pages to the fast level and less frequently accessed pages to the slower level, thereby resolving the contradiction between speed and capacity through hierarchical organization

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic page migration between memory levels based on access patterns detected through sampling. Pages are moved from slow to fast memory when access frequency increases, and vice versa, making the memory allocation dynamic rather than static to optimize both speed and effective capacity

Inventive Principle:
Principle #15Dynamics

2Productivity

If more memory pages are placed in fast memory level, then bandwidth and latency improve, but the limited capacity of fast memory is exceeded

Engineering Contradiction:
Improvememory bandwidthVSAvoidfast memory capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent samples a portion of memory access instructions rather than tracking all accesses, and migrates only the most frequently accessed pages to fast memory. This partial action approach achieves sufficient bandwidth improvement without exceeding fast memory capacity

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes the parameter of page location between memory levels based on access frequency parameters. By adjusting which pages reside in fast memory versus slow memory, the system optimizes bandwidth utilization within the constrained capacity of fast memory

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If memory access instructions are sampled and analyzed, then page allocation accuracy improves, but system overhead increases

Engineering Contradiction:
Improveaccess pattern detection accuracyVSAvoidsampling and migration overhead
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent samples a subset of memory access instructions rather than analyzing every single access. This partial sampling approach provides sufficient accuracy for effective page migration while keeping the overhead manageable and not excessively burdening the system

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The memory management system performs self-service by automatically sampling its own access patterns and making migration decisions without requiring external intervention or complex external control mechanisms, thereby reducing overall system complexity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10089014B2Memory-sampling based migrating page cache
Publication Date: 2018.10.02 ADVANCED MICRO DEVICES INC
  • US10089014B2 patent drawing
  • US10089014B2 patent drawing
  • US10089014B2 patent drawing

AI summary

Systems, apparatuses, and methods for implementing a memory sampling based migrating page cache are disclosed. In one embodiment, a system includes one or more processors and a multi-level memory hierarchy. The system is configured to record metadata associated with a portion of memory access instructions executed by one or more processors in one or more sampling intervals. The system generates predictions on which memory pages will be accessed in a subsequent sampling interval based on the recorded metadata. The system migrates one or more memory pages to a first memory level from a second memory level responsive to predicting that the one or more memory pages will be accessed in the subsequent sampling interval. The system also adjusts a duration of the sampling interval based on the number of memory accesses or a number of page faults per interval.