US 12,248,692 B1
Selective packing of small block write operations prior to compression
Sandeep Chandrashekhara, Shrewsbury, MA (US); Mohammed Asher, Bangalore (IN); Ramesh Doddaiah, Westborough, MA (US); and Aamir Mohammed Vt, Bangalore (IN)
Assigned to Dell Products, L.P., Hopkinton, MA (US)
Filed by Dell Products, L.P., Hopkinton, MA (US)
Filed on Nov. 6, 2023, as Appl. No. 18/387,235.
Int. Cl. G06F 3/06 (2006.01); G06F 12/02 (2006.01)
CPC G06F 3/064 (2013.01) [G06F 3/061 (2013.01); G06F 3/0626 (2013.01); G06F 3/0673 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method of selective packing of small block write operations prior to compression, comprising:
creating a plurality of Storage Groups (SG), each SG including at least one logical storage device, the logical storage device including a plurality of extents, and each extent including a plurality of tracks;
receiving write operations, each write operation being directed at a respective track on a respective extent in a respective device in a respective SG;
forecasting compressibility characteristics of each received write operation;
pooling write operations with similar forecast compressibility characteristics into a set of two or more compressibility pools;
forming a set of extent-level groups, each extent-level group including write operations on tracks included in the respective extent;
forming a set of device-level groups, each device-level group including write operations on tracks included in extents included in the respective device;
forming a set of SG-level groups, each SG-level group including write operations on tracks included in extents included in devices included in the respective SG;
creating Input/Output (IO) packages from each of the compressibility pools, each IO package containing a respective selected set of write IO operations contained in at most one of the compressibility pools, the respective selected set of write IO operations being selected first from the extent-level group, then from the device-level group, and then from the SG-level group.