Dynamic cache slot pre-allocation
AssigneeDell Products L.P.
InventorsJohn Creed, Ramesh Doddaiah
Life of this patent
Estimating the term…
Abstract
One or more aspects of the present disclosure relate to dynamically pre-allocating cache slots based on workload forecasting. In embodiments, characteristics corresponding to one or more input/output (IO) operations received by a storage array are determined. An IO workload for one or more cache segments of system memory of the storage array is also forecasted. In addition, a queue depth for each cache pool of the one or more cache segments is dynamically adjusted. Further, cache slots are dynamically pre-allocated to each cache pool based on the queue depth of each cache pool.
Claims20
A method comprising:
- determining characteristics corresponding to one or more input/output (IO) operations received by a storage array;
- forecasting an IO workload for one or more cache segments of system memory of the storage array;
- dynamically adjusting a queue depth for each cache pool of the one or more cache segments;
- and
- dynamically reserving cache slots in advance for each cache pool based on the queue depth of each cache pool, wherein the cache slots are reserved before receiving IO operations that will use the cache slots, thereby reducing allocation latency when the IO operations are subsequently received.
An apparatus with a memory and processor, the apparatus configured to:
- determine characteristics corresponding to one or more input/output (IO) operations received by a storage array;
- forecast an IO workload for one or more cache segments of system memory of the storage array;
- dynamically adjust a queue depth for each cache pool of the one or more cache segments;
- and
- dynamically reserve cache slots in advance for each cache pool based on the queue depth of each cache pool, wherein the cache slots are reserved before receiving IO operations that will use the cache slots, thereby reducing allocation latency when the IO operations are subsequently received.
Dependencies are inferred from the claim text.