Heterogeneous Memory Page Migration Using Prefetcher-Friendly Bits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In heterogeneous memory systems, performance disparities between different memory types lead to increased execution times due to the storage of hot and cold pages in inappropriate memory types, necessitating a more efficient data migration strategy.

Innovation Solution

A memory system with a prefetcher and migration module that filters prefetcher data to identify prefetcher-friendly areas, setting bits to determine data migration based on cache hits and reference patterns, optimizing data placement between fast and slow memories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If heterogeneous memory system is used to store hot and cold pages in different memory types, then memory capacity and storage speed are improved, but execution time increases due to performance disparities between memory types

Engineering Contradiction:
Improvememory capacityVSAvoidexecution time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary data migration by predicting which pages will be accessed soonest and proactively moving them between memory tiers before they are actually needed. The prefetcher analyzes access patterns and triggers migration operations in advance, reducing the time penalty of accessing pages in slower memory tiers.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors memory access patterns, cache hit rates, and page residence times to dynamically adjust migration strategies. Feedback from actual page access behavior is used to refine predictions and optimize the timing and direction of data migration operations, balancing memory capacity utilization with execution speed.

Inventive Principle:
Principle #23Feedback

2Productivity

If data migration is performed frequently to optimize page placement, then system performance is improved, but migration overhead and processing complexity increase

Engineering Contradiction:
Improvesystem performanceVSAvoidmigration processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Instead of migrating all pages continuously, the system applies partial action by selectively migrating only the most critical pages based on access frequency and predicted future access patterns. The prefetcher identifies a subset of high-value pages for migration, reducing overall migration overhead while maintaining performance benefits.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

By performing migration predictions and preparations in advance, the system reduces the complexity of real-time migration decisions. The prefetcher analyzes historical data and pre-determines migration candidates, allowing the migration module to execute simpler, more automated operations based on pre-computed priorities.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If prefetcher data is used to guide data migration, then data placement accuracy is improved, but memory access delay increases due to additional processing requirements

Engineering Contradiction:
Improvedata placement accuracyVSAvoidmemory access delay
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The prefetcher performs preliminary analysis of access patterns and predicts future page access needs before actual access occurs. This advance prediction allows the migration module to prepare data transfers in advance, so when pages are actually accessed, they are already in the optimal memory location, reducing access delay despite the additional processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses its own access pattern data to guide migration decisions, allowing the memory subsystem to self-optimize based on observed behavior. The prefetcher leverages existing access logs and metadata to automatically identify migration candidates without external intervention, minimizing the overhead of analysis while improving placement accuracy.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12475052B2Memory systems and methods for operating memory systems
Publication Date: 2025.11.18 SAMSUNG ELECTRONICS CO LTD
  • US12475052B2 patent drawing
  • US12475052B2 patent drawing
  • US12475052B2 patent drawing

AI summary

Memory systems and methods for operating the same. A memory system comprises a first memory, a second memory having an operating speed different from that of the first memory, a storage unit configured to store an instruction, a prefetcher configured to update prefetcher data in response to occurrence of cache hits and a processor configured to execute the instruction stored in the storage unit. When the instruction is executed, the processor is configured to generate prefetcher friendly data by filtering the prefetcher data, set a prefetcher friendly bit in a first pointer area corresponding to the first memory and a second pointer area corresponding to the second memory based on the prefetcher friendly data, and determine whether data of the first pointer area and the second pointer area are migrated, in consideration of a reference bit and the prefetcher friendly bit of the first and second pointer areas.