Persisting Page Access Heuristics in Memory-Centric Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face challenges in persistently managing memory access patterns, leading to inefficiencies in cache performance and increased latency due to the volatility of DRAM, which results in the loss of cache state upon system restarts.

Innovation Solution

The method involves collecting and persisting page access heuristics as metadata in non-volatile memory during runtime, allowing for the restoration of the page cache to a previous state upon application restart, thereby maintaining optimal cache performance and reducing page faults.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If volatile memory (DRAM) is used for page cache, then cache access speed is improved, but cache state is lost upon system restart

Engineering Contradiction:
Improvecache access speedVSAvoidcache state persistence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by collecting and persisting page access heuristics metadata to non-volatile memory during runtime execution. This allows the cache state to be restored after restart without losing the access patterns that optimize cache performance

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention creates a copy of the access heuristics metadata and stores it in non-volatile memory. This copy preserves the cache optimization information even when the volatile memory is cleared, enabling restoration of cache performance characteristics after system restart

Inventive Principle:
Principle #26Copying

2Reliability

If page cache is cleared on restart, then system reliability is improved, but cache performance is degraded due to loss of access patterns

Engineering Contradiction:
Improvesystem restart reliabilityVSAvoidcache performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The access heuristics metadata is copied to non-volatile memory, creating a persistent record of cache optimization information that survives system restarts, allowing cache performance to be restored without compromising system reliability

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system changes the persistence parameter of the metadata by storing it in non-volatile memory with durability settings, ensuring that the access patterns are preserved across restart events while maintaining system reliability

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If metadata is stored only in volatile memory, then device complexity is reduced, but data loss occurs upon restart

Engineering Contradiction:
Improvestorage architecture complexityVSAvoidmetadata loss
Core Design Contradiction:
Device complexityVSLoss of information

Solution Approach 1:

The system performs preliminary persistence of metadata to non-volatile memory during runtime, ensuring that the information is saved before restart occurs, thus preventing data loss without requiring complex dual-storage architectures

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The non-volatile memory serves as an intermediary storage layer that bridges the gap between volatile memory's speed and permanent storage's persistence, allowing metadata to be preserved across restarts while maintaining relatively simple system architecture

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If cache is repopulated after restart, then cache state is restored, but time and resources are wasted

Engineering Contradiction:
Improvecache state restorationVSAvoidcache repopulation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The access heuristics metadata is preliminarily persisted to non-volatile memory during runtime, so that upon restart the system can immediately restore cache performance characteristics without needing to repopulate the cache from scratch, saving significant time and resources

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9652405B1Persistence of page access heuristics in a memory centric architecture
Publication Date: 2017.05.16 EMC IP HLDG CO LLC
  • US9652405B1 patent drawing
  • US9652405B1 patent drawing
  • US9652405B1 patent drawing

AI summary

Systems, methods, and articles of manufacture comprising processor-readable storage media are provided for managing memory by persistence of page access heuristics. For example, a method includes collecting, during run-time execution of an application, access heuristics with regard to each page of data that is accessed by the application and cached in a page cache associated with the application, and generating metadata for each cached page in the page cache. The metadata for a given cached page represents the access heuristics of the given cached page. The metadata for each cached page is maintained in a volatile memory during run-time execution of the application. Moreover, the metadata for each cached page is persistently stored in a non-volatile memory during run-time execution of the application. The persistently stored metadata for each cached page is accessed when the application is restarted to restore the page cache associated with the application to a previous state.