Hybrid Memory Management Hardware-Assisted Page Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory management systems face challenges in efficiently managing data between DRAM and secondary non-volatile memory tiers, leading to increased latency and performance bottlenecks due to the need for explicit software management or high software overheads.

Innovation Solution

Implementing a system that uses a DMA engine and cache coherence protocol to transfer specific cache lines from secondary memory to main memory, while maintaining cache coherency and updating page table entries, allowing for hardware-assisted page migration and access statistics collection to optimize data placement and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire page of data is transferred from secondary memory to main memory, then data availability is improved, but transfer time and latency increase

Engineering Contradiction:
Improvedata availabilityVSAvoidtransfer time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the page transfer operation into segments by transferring only the specific cache line that is needed rather than the entire page. The page transfer is segmented into individual cache line transfers, allowing the system to retrieve only the required data portion and leave the rest in secondary memory, thereby reducing transfer time while maintaining data availability for the specific accessed line.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and transfers only the specific cache line that is required from the secondary memory to main memory, rather than transferring the entire page. This extraction approach removes only the necessary data portion from secondary memory, reducing the overall transfer time and latency while still ensuring data availability for the accessed cache line.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of time

If hardware-assisted page migration is implemented, then page fault latency is reduced, but device complexity increases

Engineering Contradiction:
Improvepage fault latencyVSAvoidmemory management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling the hardware to automatically manage page migrations between main memory and secondary memory without requiring explicit software intervention. The memory management unit monitors page faults and initiates transfers autonomously, reducing page fault latency while the automation manages the complexity internally without increasing software burden.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces a memory management unit as an intermediary component that mediates between the CPU and memory hierarchy. This intermediary handles the complex page migration operations, cache coherence protocols, and coordination between main memory and secondary memory, thereby reducing page fault latency while encapsulating the complexity within the intermediary rather than increasing overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If cache coherency protocols are implemented during page transfer, then data consistency is maintained, but processing overhead increases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the cache coherency operations to be applied only to the specific cache line being transferred rather than the entire page. This segmented approach maintains data consistency for the accessed line while avoiding unnecessary coherency protocol overhead for other lines, thereby preserving processing throughput for unrelated memory operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by implementing cache coherency protocols only for the specific cache line that is being transferred from secondary memory to main memory, rather than applying them to the entire page or all memory operations. This partial application maintains data consistency for the accessed line while minimizing processing overhead and avoiding excessive protocol execution for unrelated data.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3282364B1Hybrid memory management
Publication Date: 2019.10.09 GOOGLE LLC
  • EP3282364B1 patent drawingFigure 1
  • EP3282364B1 patent drawingFigure 2
  • EP3282364B1 patent drawingFigure 3A~3B

AI summary

Methods, systems, and apparatus for receiving a request to access, from a main memory, a first cache line of a page of data; determining that the first cache line is not stored in the main memory and is stored in a secondary memory, and in response: transferring the first cache line of the page of data from the secondary memory to the main memory without transferring the entire page of data, wherein a remaining portion of the page of data remains stored in the secondary memory; updating a page table entry associated with the page of data to point to a location of the page of data in the main memory; and transferring the remaining portion of the page of data from the secondary memory to the main memory.