Dynamic Memory Allocation for Write-Intensive Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-volatile memory systems face challenges in optimizing the lifetime of memory cells due to varying usage patterns of applications, as frequently written apps can quickly wear out high endurance memory sections, making it difficult to predict and manage the storage of apps between high endurance and lower endurance memory sections.

Innovation Solution

Implementing a dynamic allocation mechanism where the memory system monitors app usage and alerts the host to move apps from high endurance sections to lower endurance sections or vice versa, based on write intensity, allowing for efficient use of memory resources and extending memory life by dynamically reconfiguring the memory space.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If write-intensive apps are stored in high endurance memory sections, then app performance is improved, but memory lifetime is reduced

Engineering Contradiction:
Improveapp performanceVSAvoidmemory lifetime
Core Design Contradiction:
SpeedVSDuration of action of stationary object

Solution Approach 1:

The system dynamically monitors app write intensity and automatically relocates apps between high endurance and low endurance memory sections based on their actual usage patterns. This dynamic adaptation allows the system to optimize for performance when apps are write-intensive while preserving memory lifetime when they are not, resolving the static contradiction between performance and longevity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the storage location parameter of apps based on monitored write intensity. When an app exceeds a write intensity threshold, it is relocated from high endurance memory to low endurance memory, effectively changing the storage parameters to match the app's actual behavior rather than relying on static predictions.

Inventive Principle:
Principle #35Parameter changes

2Duration of action of stationary object

If apps are relocated between memory sections, then memory lifetime is optimized, but system complexity increases

Engineering Contradiction:
Improvememory lifetimeVSAvoidsystem complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The memory system performs self-monitoring and self-management by automatically tracking app write intensity and triggering relocations without requiring complex external control mechanisms. The system serves itself by using its own operational data to make optimization decisions, reducing the need for additional complex management infrastructure.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a feedback loop where app write operations are monitored, and when thresholds are exceeded, relocation decisions are triggered. This feedback mechanism allows the system to automatically adapt to changing usage patterns and optimize memory lifetime through data-driven decisions rather than complex predetermined rules.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If dynamic monitoring of app usage is implemented, then memory allocation accuracy is improved, but processing overhead increases

Engineering Contradiction:
Improvememory allocation accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system changes monitoring parameters dynamically, adjusting the threshold for write intensity that triggers relocation. This allows the system to balance monitoring accuracy against processing overhead by only initiating costly relocation operations when app behavior clearly indicates a need for it, rather than continuously optimizing at full precision.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10713158B2Non-volatile storage system with dynamic allocation of applications to memory based on usage monitoring
Publication Date: 2020.07.14 SANDISK TECHNOLOGIES LLC
  • US10713158B2 patent drawing
  • US10713158B2 patent drawing
  • US10713158B2 patent drawing

AI summary

Technology is disclosed for dynamically assigning apps to non-volatile memory based on monitoring the apps' usage of memory resources. For a memory system having a high endurance section, such as binary (or single level cell, SLC) memory, and a lower endurance section, such as multi-level cell (MLC) memory, an app, including both the code for executing the app and the associated data payload, may initially be stored in the lower endurance section. The memory system monitors the activity of the app for high levels of activity and, if the app is being frequently written, the memory system notifies the host. In response, the host can request the memory system to move the app or just its associated payload to the high endurance section.