| CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0631 (2013.01); G06F 3/0689 (2013.01)] | 20 Claims |

|
1. A method of prioritizing back-end slice destage operations based on allocated slot sizes of shared global memory, comprising:
allocating slots of shared global memory to front-end write IO operations, the allocated slots of shared global memory having slot sizes selected from at least two available slot sizes;
organizing back-end storage resources in a (Redundant Array of Inexpensive Disks) RAID configuration in which sets of back-end tracks form slices of the RAID configuration;
maintaining a respective mask for each slice of back-end tracks, the respective mask identifying back-end tracks of the slice that are owed data from the front-end write IO operations that have been allocated slots of the shared global memory;
weighting the mask bits of the respective masks according to a combination of the slot size of shared global memory associated with the corresponding front-end write IO operation that is pending destage to the back-end track and a current destage pressure on shared global memory;
using a sum of the weighted mask bits to determine a respective aging time for the slice; and
upon expiration of the respective aging time for the slice, selecting the respective slice to be destaged to back-end storage resources.
|