Storage Reclamation Manager for SSD Write-Back Cache

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Write-back cache methods, commonly used in storage devices like SSDs, do not adequately address the need for enhanced storage endurance and efficient buffer usage, particularly in write-intensive applications, leading to limitations in performance and endurance for SSDs with NAND memory such as MLC and QLC NAND.

Innovation Solution

A storage reclamation manager is introduced to manage storage capacity by generating commands during write-back operations, such as TRIM or UNMAP commands, to free storage locations in the primary storage device, allowing for the reclamation of invalid data and optimizing storage capacity, thereby enhancing endurance and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If write-back cache is used to reduce latency and increase throughput, then write performance is improved, but storage endurance and buffer usage efficiency deteriorate

Engineering Contradiction:
Improvewrite performanceVSAvoidstorage endurance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by issuing TRIM/UNMAP commands to the primary storage device when data is evicted from the cache, proactively reclaiming storage locations before they are needed again. This preliminary reclamation prevents storage capacity issues and optimizes future write operations, thereby improving both performance and endurance without sacrificing the benefits of write-back caching.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by tracking cache evictions and generating corresponding reclamation commands to the primary storage device. This feedback loop ensures that the primary storage device is aware of invalid data locations and can optimize its internal buffers and storage capacity management, resolving the contradiction between write performance and storage endurance.

Inventive Principle:
Principle #23Feedback

2Loss of energy

If write-back cache absorbs incoming write operations, then write amplification is reduced, but storage capacity management deteriorates

Engineering Contradiction:
Improvewrite amplificationVSAvoidstorage capacity management
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system introduces an intermediary mechanism that acts as a bridge between the cache device and the primary storage device. When data is evicted from the cache, the intermediary generates TRIM/UNMAP commands to inform the primary storage device of invalid locations. This intermediary function simplifies storage capacity management by automatically coordinating between the two storage devices without requiring complex manual intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If data is written to cache but not copied to primary storage until later, then system speed is increased, but storage location reclamation deteriorates

Engineering Contradiction:
Improvesystem speedVSAvoidstorage reclamation time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The system performs preliminary reclamation actions by issuing TRIM/UNMAP commands at the moment of cache eviction, rather than waiting for later consolidation operations. This preliminary action immediately reclaims storage locations in the primary storage device, eliminating delays and ensuring storage capacity is available for future writes, thereby maintaining high system speed without sacrificing reclamation efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10915264B2Apparatus, systems, and methods to reclaim storage associated with cached data
Publication Date: 2021.02.09 INTEL NDTM US LLC
  • US10915264B2 patent drawing
  • US10915264B2 patent drawing
  • US10915264B2 patent drawing

AI summary

Embodiments are directed towards apparatuses, methods, and systems associated with a storage reclamation manager that generates a command to reclaim storage locations to assist in management of a storage capacity of a primary storage device. In embodiments, the command is a trim command to inform the storage device of storage locations including invalid data. In embodiments, the command is generated during performance of operations associated with a write-back operation where a cache coupled with the processor stores a first portion of data and the primary storage device stores a corresponding second portion of data. In embodiments, the command is generated during or after a write-back operation of a third portion of data into the cache device. In embodiments, the command assists in reclamation of storage locations in which the second portion of data is stored, to assist in management of a storage capacity of the primary storage device. Additional embodiments may be described and claimed.