Storage Controller Defragmentation Threshold Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fragmentation of memory in storage systems leads to performance degradation over time, as files become disorganized, increasing the number of NAND sense operations required for read access, which negatively impacts write-amplification factor, endurance, and latency.

Innovation Solution

A storage system with a controller that analyzes logical block address ranges in defragmentation units, performing defragmentation operations only on units fragmented above a threshold, thereby minimizing unnecessary writes and optimizing performance by rewriting only fragmented chunks, and dynamically adjusting defragmentation chunk size and NAND sense threshold based on memory health and usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a defragmentation operation is performed on the entire memory, then read performance is improved, but write-amplification factor increases and endurance deteriorates

Engineering Contradiction:
Improveread performanceVSAvoidendurance
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The memory is divided into multiple defragmentation units, and the controller performs defragmentation operations on individual units rather than the entire memory. This segmentation allows selective defragmentation of only fragmented units, reducing unnecessary writes and improving endurance while maintaining read performance benefits where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller analyzes each defragmentation unit individually to determine if it requires defragmentation based on fragmentation threshold criteria. Only units exceeding the threshold undergo defragmentation operations, applying the treatment locally where needed rather than uniformly across all memory, thereby minimizing write-amplification and preserving endurance.

Inventive Principle:
Principle #3Local quality

2Speed

If a defragmentation operation is performed on the entire memory, then read performance is improved, but the time required for the operation increases

Engineering Contradiction:
Improveread performanceVSAvoiddefragmentation operation time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The memory is divided into multiple defragmentation units, and the controller performs defragmentation operations on individual units rather than the entire memory. This segmentation allows selective defragmentation of only fragmented units, reducing unnecessary writes and improving endurance while maintaining read performance benefits where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs defragmentation operations only on defragmentation units that exceed the fragmentation threshold, rather than processing the entire memory uniformly. This partial action approach reduces the total operation time by skipping non-fragmented units while still achieving performance improvements in areas that need them.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If the defragmentation chunk size is small, then the precision of fragmentation detection is improved, but the number of operations increases

Engineering Contradiction:
Improvefragmentation detection precisionVSAvoiddefragmentation operation efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The controller dynamically adjusts the defragmentation chunk size based on the specific characteristics of each defragmentation unit and fragmentation patterns observed. This dynamic adaptation allows the system to use smaller chunks when high precision detection is needed for highly fragmented data, while using larger chunks for efficiently handling less fragmented data, thereby balancing detection precision with operational efficiency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11809747B2Storage system and method for optimizing write-amplification factor, endurance, and latency during a defragmentation operation
Publication Date: 2023.11.07 SANDISK TECHNOLOGIES LLC
  • US11809747B2 patent drawing
  • US11809747B2 patent drawing
  • US11809747B2 patent drawing

AI summary

A storage system analyzes a logical block address range of data in a resolution of a defragmentation unit. The storage system determines whether a given defragmentation unit is fragmented above a threshold and performs a defragmentation operation accordingly. Additionally or alternatively, the storage system can receive a suggested logical block address read order from a host to improve performance.