Cache Resource Prefetching for Write Set Tracks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage environments, there is a need for improved techniques to prefetch cache resources for host write requests on fast channels to ensure cache resources are available when write requests are received, as existing methods lead to latency and failure of read/write requests due to context switching and allocation delays.
Innovation Solution
A computer program product and method that releases cache resources for a write set before expected writes and re-allocates them strategically based on estimated write requests, optimizing prefetching by starting from the last written track or skipping already written tracks, and indicating retry hints to adjust prefetching operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If cache resources are held for tracks in a write set to ensure fast write request processing, then write request completion time is improved, but cache resource availability for other requests deteriorates
Solution Approach 1:
The system performs preliminary actions by releasing cache resources for tracks in a write set before expected writes occur (when a quiesce condition is detected), and then re-obtains those cache resources in advance before the actual write requests arrive. This preliminary release and re-acquisition ensures cache resources are available when needed while making them available for other requests during the intermediate period.
2Adaptability or versatility
If cache resources are released for tracks in a write set to make them available for other requests, then cache resource availability is improved, but write request processing latency increases
Solution Approach 1:
The system performs preliminary action by re-obtaining cache resources for tracks in a write set in advance before actual write requests are received. When a quiesce condition is detected, the system releases cache resources and then proactively re-acquires them before the write operations need to proceed, ensuring minimal latency when writes resume.
3Device complexity
If the host system holds the application thread in a spin loop waiting for read/write request completion, then processor time for context swapping is saved, but processor resources are consumed during waiting
Solution Approach 1:
The storage system provides self-service by proactively releasing and re-obtaining cache resources in advance before write requests need to be processed. This eliminates the need for the host system to continuously poll or spin-wait for cache resource availability, as the resources are already prepared when needed, thereby reducing both context switching overhead and processor waiting time.
Data Source
AI summary
Provided are a computer program product, system, and method for prefetching cache resources for a write request from a host to tracks in storage cached in a cache. Cache resources held for a plurality of tracks in a write set are released before expected writes are received for the tracks in the write set. Cache resources for tracks in the write set are obtained, following the release of the cache resources, to use for expected write requests to the tracks in the write set.


