US 12,314,609 B1
Global memory slot size based destage prioritization
Rong Yu, West Roxbury, MA (US); and Lixin Pang, Needham, MA (US)
Assigned to Dell Products, L.P., Hopkinton, MA (US)
Filed by Dell Products, L.P., Hopkinton, MA (US)
Filed on Mar. 1, 2024, as Appl. No. 18/592,644.
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0631 (2013.01); G06F 3/0689 (2013.01)] 20 Claims
OG exemplary drawing
 
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.