Cache Stride Promotion for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cache management systems in storage systems face inefficiencies in promoting tracks from a faster access cache to a slower access storage, leading to increased latency and resource wastage due to suboptimal handling of full and partial strides in the cache.

Innovation Solution

The system determines tracks to demote from the first cache and forms strides to write as full strides to the second cache, while demoting tracks from the second cache based on an LRU algorithm and consolidating valid tracks to maintain free strides, thereby improving cache promotion operations and resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If tracks are promoted from first cache to second cache using traditional cache management techniques, then cache hit rate is improved, but I/O operation complexity increases and latency is reduced only partially

Engineering Contradiction:
Improvecache hit rateVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the second cache into multiple strides, where each stride is a contiguous block of tracks. This segmentation allows the system to identify and promote complete strides as single units rather than individual tracks, reducing the number of I/O operations required and improving promotion efficiency while maintaining cache hit rate.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple individual track promotions into a single stride promotion operation. By combining tracks that form complete strides and promoting them together in one I/O operation, the system reduces total operation time and latency while achieving the same cache hit rate improvement.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If individual tracks are promoted from first cache to second cache, then cache flexibility is improved, but I/O operation efficiency deteriorates

Engineering Contradiction:
Improvecache flexibilityVSAvoidI/O operation efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements a dynamic stride promotion mechanism that adapts to the current state of the second cache. The system dynamically identifies which strides are complete and ready for promotion, and automatically adjusts promotion batches based on available space and stride completeness, maintaining cache flexibility while maximizing I/O efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the fundamental parameter of promotion granularity from individual tracks to complete strides. This parameter change transforms the promotion process from numerous small operations to fewer larger operations, dramatically improving I/O efficiency while the system maintains adaptability through its ability to selectively promote based on stride completeness and cache space availability.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If the second cache is filled with promoted tracks, then cache capacity utilization is improved, but available space for new tracks deteriorates

Engineering Contradiction:
Improvecache capacity utilizationVSAvoidavailable space
Core Design Contradiction:
Quantity of substanceVSArea of stationary object

Solution Approach 1:

The patent performs preliminary actions by pre-identifying and marking complete strides in the first cache that are ready for promotion. This allows the system to batch promote multiple complete strides together before the second cache becomes full, maximizing capacity utilization while maintaining space for new tracks by proactively managing promotion queues.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuous promotion operations by constantly monitoring both the first cache for complete strides and the second cache for available space. This continuous action ensures that promotion operations occur as soon as conditions are favorable, maximizing cache capacity utilization without allowing the second cache to become completely full and block new track admissions.

Inventive Principle:
Principle #20Continuity of useful action

4Reliability

If partial strides are handled separately from full strides, then data integrity is improved, but operation complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidoperation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and separates the handling of complete strides from partial strides. Complete strides are identified and promoted as atomic units to maintain data integrity, while partial strides are left in the first cache to be completed before promotion. This extraction simplifies the promotion logic by focusing on complete strides only, reducing operation complexity compared to handling mixed stride types together.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP2805241B1Populating a first stride of tracks from a first cache to write to a second stride in a second cache
Publication Date: 2019.01.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • EP2805241B1 patent drawingFigure 1
  • EP2805241B1 patent drawingFigure 2~3
  • EP2805241B1 patent drawingFigure 4~8

AI summary

Provided are a computer program product, system, and method for managing data in a cache system comprising a first cache, a second cache, and a storage system. A determination is made of tracks stored in the storage system to demote from the first cache. A first stride is formed including the determined tracks to demote. A determination is made of a second stride in the second cache in which to include the tracks in the first stride. The tracks from the first stride are added to the second stride in the second cache. A determination is made of tracks in strides in the second cache to demote from the second cache. The determined tracks to demote from the second cache are demoted.