Distributed Memory Subsystem Data Recovery via Parallel Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data protection techniques for memory subsystems, such as centralized encoding and decoding, lead to significant computational overhead, increased latency, and network traffic, impacting quality of service (QoS) due to the centralized nature of recovery processes in memory subsystem failures.

Innovation Solution

Implementing a distributed and parallel recovery mechanism where multiple memory subsystems perform computations to recover data from a failed subsystem, with a host or processing unit distributing recovery efforts across multiple memory subsystems, allowing them to operate in parallel and write recovered data to a spare subsystem.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If centralized encoding and decoding is used for data protection in memory subsystems, then data protection is achieved, but computational overhead increases significantly

Engineering Contradiction:
Improvedata protectionVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the centralized recovery process into distributed recovery operations across multiple memory subsystems. Each memory subsystem independently performs recovery computations for specific data portions, dividing the computational workload rather than concentrating it in a single centralized location, thereby reducing overall computational overhead while maintaining data protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The memory subsystems perform self-service by autonomously executing recovery operations for failed subsystems without requiring centralized intervention. Each subsystem uses its own computational resources to decode and recover data, eliminating the need for a centralized controller and reducing the computational burden on any single system.

Inventive Principle:
Principle #25Self-service

2Reliability

If centralized recovery process is used, then data recovery is coordinated, but latency increases

Engineering Contradiction:
Improvedata recovery coordinationVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The recovery process is segmented into parallel operations across multiple memory subsystems, each handling specific data portions simultaneously. This segmentation enables concurrent recovery operations that complete faster than sequential centralized processing, reducing latency while maintaining coordination through the host system's task distribution mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The host system performs preliminary actions by pre-distributing recovery tasks and data portions to appropriate memory subsystems before failures occur. This preparation enables faster recovery execution when failures happen, as the infrastructure is already in place and configured, reducing the latency between failure detection and recovery initiation.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If centralized recovery process is used, then recovery coordination is maintained, but network traffic increases

Engineering Contradiction:
Improverecovery coordinationVSAvoidnetwork traffic
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts recovery operations from the centralized coordination model and distributes them to individual memory subsystems. By taking out the computational tasks from centralized processing and placing them locally at each subsystem, the amount of data that needs to traverse the network is significantly reduced, as each subsystem processes its own recovery operations locally.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Memory subsystems perform self-service recovery operations using their own local resources, minimizing their dependence on network communication for recovery computations. This self-service approach reduces network traffic requirements compared to centralized recovery where data must be continuously transmitted between the coordination point and participating subsystems.

Inventive Principle:
Principle #25Self-service

4Reliability

If centralized recovery process is used, then coordination control is maintained, but quality of service deteriorates

Engineering Contradiction:
Improvecoordination controlVSAvoidquality of service
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The recovery process is segmented into independent parallel tasks across multiple memory subsystems, enabling simultaneous execution that improves productivity. This segmentation allows recovery operations to proceed concurrently without blocking each other, thereby enhancing quality of service while the host system maintains coordination control through task distribution and monitoring.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from a static centralized recovery model to a dynamic distributed model where memory subsystems can autonomously execute recovery operations based on real-time conditions. This dynamic approach allows the system to adapt to varying workloads and failure scenarios, improving quality of service by reducing recovery time and increasing system responsiveness.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12111731B2Cooperative memory subsystem data recovery
Publication Date: 2024.10.08 MICRON TECHNOLOGY INC
  • US12111731B2 patent drawing
  • US12111731B2 patent drawing
  • US12111731B2 patent drawing

AI summary

Exemplary methods, apparatuses, and systems include detecting a failure of a first memory subsystem of a plurality of memory subsystems. A first recovery instruction is sent to a second memory subsystem of the plurality of memory subsystems. The first recovery instruction directs the second memory subsystem to recover a first subset of data stored by the first memory subsystem. A second recovery instruction is sent to a third memory subsystem of the plurality of memory subsystems. The second recovery instruction directs the third memory subsystem to rebuild a second subset of data stored by the first memory subsystem. The first and second subsets of data differ from one another.