Dynamic Unmap Command Sizing for Storage Timeout Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The execution of unmap commands on data storage devices is hindered by the varying time requirements based on the type of data stored, leading to increased risks of timeout conditions and device failures, particularly when dealing with a high percentage of random data.

Innovation Solution

A data storage device equipped with an unmap command analysis system that dynamically determines the size of unmap commands based on the amount of random data stored, using an unmap command size table to identify the most efficient command size for optimal performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a fixed predetermined unmap command size is used, then the device structure is simple and easy to operate, but the execution time varies significantly and timeout conditions occur with random data

Engineering Contradiction:
Improvetimeout condition preventionVSAvoidunmap command size determination
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The unmap command size is changed from a fixed predetermined value to a dynamic value that adapts based on the detected data pattern (sequential vs. random). The system monitors data characteristics and adjusts the unmap command size accordingly, transforming a static parameter into a dynamic one that responds to operational conditions to prevent timeouts while maintaining reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The unmap command size parameter is modified based on the detected data pattern. When random data is detected, the system changes the unmap command size parameter to an optimized value from a lookup table, thereby adjusting the operational parameter to match the data characteristics and prevent timeout conditions without increasing device complexity.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If a larger unmap command size is used, then fewer commands are needed and productivity increases, but the risk of timeout conditions increases with random data

Engineering Contradiction:
Improveunmap command execution efficiencyVSAvoidtimeout condition risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The unmap command size parameter is dynamically adjusted based on the detected data pattern. For sequential data, a larger unmap command size is used to improve productivity by reducing the number of commands. For random data, the parameter is changed to a smaller optimized size from the lookup table, thereby maintaining high productivity while preventing timeout conditions.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements feedback by detecting the data pattern (sequential or random) and using this information to determine the appropriate unmap command size. This feedback loop ensures that the unmap command size is continuously optimized based on actual data characteristics, achieving high productivity without timeout conditions.

Inventive Principle:
Principle #23Feedback

3Reliability

If unmap command size is dynamically adjusted, then timeout conditions are reduced and reliability improves, but the system complexity increases

Engineering Contradiction:
Improvedevice failure preventionVSAvoidunmap command analysis system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

An unmap command analysis system is introduced as an intermediary component that detects data patterns and determines optimal unmap command sizes. This intermediary layer handles the complexity of dynamic adjustment, isolating the core storage operations from the decision-making logic and improving reliability without significantly increasing overall device complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary detection of data patterns before executing unmap commands. By detecting whether the data is sequential or random in advance, the system can pre-determine the optimal unmap command size from a lookup table, thereby preventing timeout conditions and improving reliability without requiring complex real-time adjustments during command execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12307133B1Deterministic resizing of unmap commands
Publication Date: 2025.05.20 SANDISK TECHNOLOGIES LLC
  • US12307133B1 patent drawing
  • US12307133B1 patent drawing
  • US12307133B1 patent drawing

AI summary

A data storage device includes an unmap command analysis system that dynamically determines a size, or a LBA range, of an unmap command executed on the data storage device. The size of the unmap command is based, at least in part, on an amount of random data stored by the data storage device. The unmap command analysis system determines whether to check the amount of random data stored by the data storage device in response to a trigger event. When the trigger event is detected and the amount of random data is determined, the unmap command analysis system compares the amount of random data to information in an unmap command size table. The unmap command size table indicates which unmap command sizes are most efficient based on the determined amount of random data stored by the data storage device.