Invoking input/output (I/O) threads on processors to demote tracks from a cache
First Claim
1. A computer program product for managing tracks in a storage in a cache, the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs operations, the operations comprising:
- invoking a plurality of demote threads on a plurality of processors to demote tracks in the cache;
in response to being invoked, requesting by each demote thread of the invoked demote threads, whether a lock is held to a demote ready list indicating tracks eligible to demote from the cache, wherein the lock serializes access to the demote ready list by the invoked demote threads;
obtaining the lock, by a demote thread requesting the lock, in response to the lock being available;
processing, by the demote thread obtaining the lock, the demote ready list to demote tracks from the cache; and
releasing the lock in response to demoting the tracks eligible to demote from the cache.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are a computer program product, system, and method for invoking Input/Output (I/O) threads on processors to demote tracks from a cache. An Input/Output (I/O) thread, executed by a processor, processes I/O requests directed to tracks in the storage by accessing the tracks in the cache. After processing at least one I/O request, the I/O thread determines whether a number of free cache segments in the cache is below a free cache segment threshold. The I/O thread processes a demote ready list, indicating tracks eligible to demote from the cache, to demote tracks from the cache in response to determining that the number of free cache segments is below the free cache segment threshold. The I/O thread continues to process I/O requests directed to tracks from the storage stored in the cache after processing the demote ready list to demote tracks in the cache.
31 Citations
20 Claims
-
1. A computer program product for managing tracks in a storage in a cache, the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs operations, the operations comprising:
-
invoking a plurality of demote threads on a plurality of processors to demote tracks in the cache; in response to being invoked, requesting by each demote thread of the invoked demote threads, whether a lock is held to a demote ready list indicating tracks eligible to demote from the cache, wherein the lock serializes access to the demote ready list by the invoked demote threads; obtaining the lock, by a demote thread requesting the lock, in response to the lock being available; processing, by the demote thread obtaining the lock, the demote ready list to demote tracks from the cache; and releasing the lock in response to demoting the tracks eligible to demote from the cache. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for managing tracks in a storage, comprising:
-
a plurality of processors; a cache; and computer readable storage medium having computer readable program code embodied therein that when executed performs operations, the operations comprising; invoking a plurality of demote threads on a plurality of processors to demote tracks in the cache; in response to being invoked, requesting by each demote thread of the invoked demote threads, whether a lock is held to a demote ready list indicating tracks eligible to demote from the cache, wherein the lock serializes access to the demote ready list by the invoked demote threads; obtaining the lock, by a demote thread requesting the lock, in response to the lock being available; processing, by the demote thread obtaining the lock, the demote ready list to demote tracks from the cache; and releasing the lock in response to demoting the tracks eligible to demote from the cache. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for managing tracks in a storage in a cache, comprising:
-
invoking a plurality of demote threads on a plurality of processors to demote tracks in the cache; in response to being invoked, requesting by each demote thread of the invoked demote threads, whether a lock is held to a demote ready list indicating tracks eligible to demote from the cache, wherein the lock serializes access to the demote ready list by the invoked demote threads; obtaining the lock, by a demote thread requesting the lock, in response to the lock being available; processing, by the demote thread obtaining the lock, the demote ready list to demote tracks from the cache; and releasing the lock in response to demoting the tracks eligible to demote from the cache. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification