ML-Driven Cache Prestaging Trigger Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current adaptive prestaging algorithms do not effectively consider device speed of storage devices and bandwidth availability between cache and storage, leading to suboptimal prestaging of tracks, which affects cache hits and response time.

Innovation Solution

A machine learning module is trained to dynamically determine the optimal trigger track and prestage amount based on current operational parameters, including I/O activity, storage device speed, adaptor bandwidth, and destage/stage tasks, to optimize prestaging for improved cache hits and response time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If adaptive prestaging algorithms adjust trigger track and prestage amount based on basic cache hit/miss patterns, then cache hit rates improve, but system response time and bandwidth utilization remain suboptimal due to ignoring storage device speed and adaptor bandwidth

Engineering Contradiction:
Improvecache hit rateVSAvoidsystem response time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The prestaging parameters (trigger track and prestage amount) are transformed from static or简单地adaptive values to dynamic values that continuously adjust based on real-time storage device speed and adaptor bandwidth conditions. The machine learning module continuously learns from operational parameters and dynamically optimizes prestaging decisions, allowing the system to adapt to changing I/O workloads and hardware performance characteristics.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the parameters used for prestaging decisions from basic cache hit/miss patterns to a comprehensive set including storage device speed, adaptor bandwidth utilization, and I/O activity patterns. By incorporating these additional parameters into the machine learning model, the system can optimize prestaging to simultaneously improve cache hit rates and system response time.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If prestaging amount is increased to improve cache hit rates, then more tracks are available in cache, but bandwidth consumption and cache memory utilization increase

Engineering Contradiction:
Improvecache hit rateVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The machine learning module optimizes the prestage amount parameter by considering current adaptor bandwidth utilization and storage device speed. When bandwidth is available and device speed is high, the model may increase prestage amount to improve cache hits. When bandwidth is constrained or device speed is low, the model reduces prestage amount to conserve bandwidth, thus dynamically balancing cache effectiveness with resource consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The prestage amount is made dynamic rather than fixed or simply adaptive. It continuously adjusts based on real-time bandwidth conditions and storage device performance, allowing the system to maximize cache hits while minimizing bandwidth consumption under varying operational conditions.

Inventive Principle:
Principle #15Dynamics

3Productivity

If machine learning module dynamically optimizes prestaging parameters based on real-time operational parameters, then system performance improves, but computational complexity and processing overhead increase

Engineering Contradiction:
Improvesystem performanceVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The machine learning module operates autonomously, continuously learning from operational parameters and self-optimizing prestaging decisions without requiring external intervention or complex real-time computation during I/O operations. The model is trained offline or during idle periods, allowing it to make rapid decisions during actual I/O operations with minimal processing overhead.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The machine learning module performs preliminary learning and optimization during idle periods or offline, building a model that can make rapid prestaging decisions during actual I/O operations. This preliminary action reduces the computational burden during critical I/O processing, as the model has already learned optimal prestaging strategies from historical data.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11940920B2Dynamically determining tracks to prestage from storage to cache using a machine learning module
Publication Date: 2024.03.26 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11940920B2 patent drawing
  • US11940920B2 patent drawing
  • US11940920B2 patent drawing

AI summary

Provided are a computer program product, system, and method for determining tracks to prestage into cache from a storage. Information is provided related to determining tracks to prestage from the storage to the cache in a stage group of sequential tracks including a trigger track comprising a track number in the stage group at which to start prestaging tracks and Input/Output (I/O) activity information to a machine learning module. A new trigger track in the stage group at which to start prestaging tracks is received from the machine learning module having processed the provided information. The trigger track is set to the new trigger track. Tracks are prestaged in response to processing an access request to the trigger track in the stage group.