Host-Based Cache Stream Eviction for Erase Block Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In host-based caching systems, the random invalidation of cache blocks leads to undesirable endurance and performance issues due to unnecessary data movement and garbage collection processes, especially when updating data that requires erasing entire erase blocks.

Innovation Solution

The implementation of Directive Type Streams allows the host to specify the physical location for data storage, enabling related data to be collocated on the same erase block, thereby eliminating the need for garbage collection and reducing data movement by dealinglocate and erase entire streams directly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional host-based caching is used with random invalidation of cache blocks, then caching functionality is provided, but endurance deteriorates and performance decreases due to unnecessary data movement and garbage collection processes

Engineering Contradiction:
ImproveenduranceVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the cache storage into erase-block-aligned units and organizes data into streams that map to specific erase blocks. This segmentation allows the system to manage cache data at the erase block level rather than individual block level, enabling entire streams to be invalidated and erased together, thereby reducing unnecessary data movement and improving both endurance and performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple cache blocks that belong to the same stream into a single erase block. By collocating related data from the same stream on the same erase block, the system can perform single-erase operations to invalidate multiple blocks simultaneously, eliminating the need for separate garbage collection processes and reducing overall data movement.

Inventive Principle:
Principle #5Merging (Combining)

2Ease of operation

If traditional caching with garbage collection is implemented, then data can be cached and managed, but device complexity increases due to garbage collection processes

Engineering Contradiction:
Improvecaching managementVSAvoidgarbage collection complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts the garbage collection functionality from the cache management system by implementing host-based stream tracking and invalidation. The host explicitly tracks stream locations and issues invalidation commands for entire streams, removing the need for the cache device to perform complex garbage collection algorithms and reducing device complexity while maintaining ease of operation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The host serves itself by tracking stream locations and managing invalidation of cached data. Instead of relying on the cache device's garbage collection mechanisms, the host maintains awareness of where its data resides and can directly invalidate specific streams, simplifying the overall system architecture and reducing the operational burden on the cache device.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If random invalidation of cache blocks occurs, then updates can be performed, but data movement increases unnecessarily

Engineering Contradiction:
Improvedata update capabilityVSAvoiddata movement
Core Design Contradiction:
Adaptability or versatilityVSLoss of substance

Solution Approach 1:

The patent implements preliminary action by having the host track and identify streams before invalidation occurs. The host maintains knowledge of stream locations and can target specific streams for invalidation, allowing updates to be performed efficiently by directly invalidating only the necessary data rather than performing random block invalidation that causes unnecessary data movement.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies local quality by treating different streams differently based on their update requirements. Instead of uniform random invalidation across all cache blocks, the system identifies and invalidates only the specific streams that need updating, localizing the invalidation operation to where it is actually needed and minimizing unnecessary data movement in other areas.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10402338B2Method and apparatus for erase block granularity eviction in host based caching
Publication Date: 2019.09.03 INTEL CORP
  • US10402338B2 patent drawing
  • US10402338B2 patent drawing
  • US10402338B2 patent drawing

AI summary

In one embodiment, a processor comprises a processing core; and a cache controller to send a plurality of write requests to a cache storage device to store cache lines of a stream block, the plurality of write requests each including a stream identifier of the stream block, wherein a capacity of the stream block is equal to a capacity of an erase block of the cache storage device and wherein the erase block is dedicated to storing cache lines of the stream block; determine to evict the stream block from the cache storage device based upon a determination that space is not available in the cache storage device to cache data received from a first storage device; and send a deallocation request to the cache storage device to deallocate all cache lines of the stream block to enable the cache storage device to erase the erase block.