Page Cache Coloring Hints for Memory Tiering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in managing memory tiers, particularly in scalability and persistence across reboots, as they rely on volatile DRAM and lack effective tiering policies that account for data importance and access frequency, leading to inefficient resource utilization and high operational complexity.

Innovation Solution

Implementing a cache replacement policy that uses a 'color hint' to indicate the hotness of pages, allowing for dynamic configuration of page caches and movement between memory tiers, including storage class memory (SCM) and DRAM, to optimize data placement and eviction based on access frequency and importance, thereby enabling non-volatile caching and efficient tiering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If volatile DRAM is used for page cache to satisfy high throughput requirements, then access speed is improved, but data persistence and reliability deteriorate during host outages or reboots

Engineering Contradiction:
Improveaccess speedVSAvoiddata persistence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The memory system is segmented into multiple tiers: volatile DRAM for hot data requiring high speed, non-volatile storage class memory for warm data requiring persistence, and HDD/SSD for cold archival data. This segmentation allows each tier to optimize for its specific requirements, resolving the contradiction between speed and persistence by placing different types of data in appropriate memory regions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically changes the persistence parameter of cached pages by writing them to non-volatile storage class memory when evicted from DRAM, while maintaining the high-speed access characteristics of DRAM for active pages. This parameter change enables the same data to transition between volatile and non-volatile states based on access patterns, resolving the speed-persistence tradeoff.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If traditional LRU cache replacement policy is used, then implementation simplicity is improved, but data placement efficiency deteriorates due to lack of awareness about data importance and access frequency

Engineering Contradiction:
Improveimplementation simplicityVSAvoiddata placement efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system implements feedback mechanisms through color hints that provide information about data hotness and importance to the cache replacement policy. This feedback allows the system to make informed decisions about which pages to evict, improving data placement efficiency while maintaining reasonable implementation complexity through the use of standardized hint mechanisms.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The cache replacement policy transitions from static LRU to a dynamic policy that adjusts eviction decisions based on color hints indicating data hotness and importance. The system dynamically adapts to changing access patterns and data characteristics, improving productivity while managing complexity through incremental policy enhancements.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If multiple independent memory tiers are implemented with non-volatile storage, then data capacity and persistence are improved, but system complexity and operational overhead increase

Engineering Contradiction:
Improvedata capacityVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system implements multi-functionality by enabling the same page cache infrastructure to serve multiple memory tiers (DRAM, storage class memory, HDD/SSD) with unified management. The color hint mechanism and tiering policy provide universal control across different storage technologies, improving data capacity while managing complexity through a unified interface rather than separate management systems for each tier.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10509731B1Methods and apparatus for memory tier page cache coloring hints
Publication Date: 2019.12.17 EMC IP HLDG CO LLC
  • US10509731B1 patent drawing
  • US10509731B1 patent drawing
  • US10509731B1 patent drawing

AI summary

Methods and apparatus for providing for a cache replacement policy for page caches for storage having a first memory tier having regions and virtual memory having mmaps of ones of the regions in the first memory tier. In an embodiment, the cache replacement policy includes setting a color hint to a first one of the cached pages, wherein the color hint includes a value indicating hotness of the first one of the cached pages.