Dynamic Programming Mode Selection for Storage Capacity Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face inefficiencies when storing data segments due to the need for padding data to fill pages completely, which reduces usable storage capacity.
Innovation Solution
The storage system employs a method where data segments are allocated space using a programming mode with a smaller page size, such as switching from TLC mode to SLC mode, to minimize padding data and maximize storage capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data segments are stored using larger page size programming modes (e.g., TLC, QLC), then storage capacity is increased, but padding data increases reducing usable storage
Solution Approach 1:
The patent dynamically changes the page size parameter based on the data segment size. When a data segment is smaller than the default page size, the system switches to a smaller page size programming mode (e.g., from QLC to TLC or SLC) to reduce padding requirements. This parameter adaptation resolves the contradiction by adjusting storage granularity to match actual data needs.
Solution Approach 2:
The system implements dynamic programming mode selection that adapts to varying data segment sizes. Instead of using a fixed page size, the system dynamically chooses between different programming modes (SLC, MLC, TLC, QLC) with different page sizes based on the specific data being stored, thereby optimizing the balance between storage capacity and usable storage.
2Loss of substance
If smaller page size programming modes (e.g., SLC) are used, then padding data is reduced increasing usable storage, but storage capacity decreases
Solution Approach 1:
The system changes the page size parameter dynamically based on data segment characteristics. For small data segments, it switches to smaller page sizes (SLC, MLC) to minimize padding and maximize usable storage. For larger data segments, it transitions to larger page sizes (TLC, QLC) to optimize overall storage capacity utilization.
Solution Approach 2:
Different portions of the storage system are configured with different programming modes and page sizes according to local needs. The system applies local quality optimization by matching the page size to the specific data segment being stored, rather than uniformly applying a single page size across all storage operations.
3Productivity
If dynamic programming mode switching is implemented, then storage optimization is improved, but system complexity increases
Solution Approach 1:
The system performs self-service optimization by automatically selecting appropriate programming modes based on data segment size without requiring external intervention. The controller autonomously evaluates data characteristics and selects the optimal page size, reducing the need for complex external management while improving storage efficiency.
Solution Approach 2:
The system implements feedback mechanisms where the controller continuously monitors data segment sizes and adjusts programming mode selections accordingly. This feedback loop enables adaptive optimization, where previous storage operations inform future mode selections, improving overall storage efficiency while managing system complexity through learned patterns.
Data Source
AI summary
A data segment to be stored at one or more storage devices is formed, wherein the data segment is to be stored at the one or more storage devices using a first programming mode having a first page size. A determination that a fragment of data of the data segment is less than the first page size is made. The fragment of data is stored at the one or more storage devices using a second programming mode having a second page size that is less than the first page size and the remaining data of the data segment is stored at the one or more storage device using the first programming mode.


