Persistent Memory Partitioning for Workload Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems face challenges in efficiently configuring and managing non-volatile memory (NVM) within the CPU memory hierarchy, particularly due to limitations in existing NVM DIMMs that do not provide sufficient flexibility to match workload behavior and user requirements, leading to potential data loss and inefficiencies in power consumption.

Innovation Solution

The solution involves partitioning NVM DIMMs into volatile and persistent regions, using management partitions accessible via a dedicated interface, and employing a management software layer to dynamically configure and reconfigure NVM based on workload demands, ensuring data durability and optimizing power usage by leveraging attributes like UMA, NUMA, and mirroring states.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If NVM is used for persistent storage, then data durability is improved, but access speed deteriorates compared to volatile memory

Engineering Contradiction:
Improvedata durabilityVSAvoidaccess speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The NVM DIMM is divided into multiple partitions, each with different configurations (volatile, persistent, mirrored, or interleaved). This segmentation allows the system to allocate specific partitions for fast access and others for durable storage, resolving the speed-reliability tradeoff by providing both characteristics in different segments of the same memory device.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically reconfigures NVM partitions based on workload demands. Management software can change partition attributes (volatile/persistent, mirroring state, interleaving) in response to changing requirements, allowing the system to optimize for speed or durability as needed without being locked into a fixed configuration.

Inventive Principle:
Principle #15Dynamics

2Reliability

If NVM is configured for high durability with mirroring, then data reliability is improved, but power consumption increases

Engineering Contradiction:
Improvedata durabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The mirroring state of NVM partitions is dynamically configurable. The system can switch between mirrored and non-mirrored states based on current durability requirements, allowing power consumption to be reduced when full mirroring is not needed while maintaining the capability to enable it when data durability is critical.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the durability parameter of NVM partitions by adjusting mirroring configurations. Partitions can be set to different mirroring states (no mirror, single mirror, dual mirror) depending on the required level of data protection, allowing flexible control over the relationship between reliability and power consumption.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If NVM is partitioned into multiple regions with different attributes, then adaptability to workload demands is improved, but device complexity increases

Engineering Contradiction:
Improveflexibility to match workload behaviorVSAvoidconfiguration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Management software acts as an intermediary between the user and the complex NVM partitioning system. This software layer handles the complexity of configuring and reconfiguring multiple partitions with different attributes, presenting a simplified interface to users while managing the underlying complexity of partition management, attribute configuration, and dynamic reconfiguration.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Device complexity

If existing NVM DIMMs are used without partitioning, then device simplicity is maintained, but ability to match workload behavior deteriorates

Engineering Contradiction:
Improveconfiguration simplicityVSAvoidflexibility to match workload behavior
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The NVM DIMM is segmented into multiple configurable partitions, each optimized for specific workload characteristics. This segmentation enables the system to match different workload behaviors (sequential access, random access, durability requirements) with appropriate partition configurations while maintaining a unified memory device architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The partitioned NVM system provides multi-functionality by supporting various access modes (volatile, persistent, mirrored, interleaved) within the same physical device. This universality allows a single NVM DIMM to serve multiple workload types and performance requirements, replacing the need for multiple specialized storage devices.

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

Data Source

PatentUS10339047B2Allocating and configuring persistent memory
Publication Date: 2019.07.02 INTEL CORP
  • US10339047B2 patent drawing
  • US10339047B2 patent drawing
  • US10339047B2 patent drawing

AI summary

Methods and apparatus to allocating and/or configuring persistent memory are described. In an embodiment, memory controller logic configures non-volatile memory into a plurality of partitions at least in part based on one or more attributes. One or more volumes (visible to an application or operating system) are formed from one or more of the plurality of partitions. Each of the one or more volumes includes one or more of the plurality of partitions having at least one similar attribute from the one or more attributes. In another embodiment, memory controller logic configures a Non-Volatile Memory (NVM) Dual Inline Memory Module (DIMM) into a persistent region and a volatile region. Other embodiments are also disclosed and claimed.