US2020394304A1PendingUtilityA1

Optimizing storage system performance using storage device topology

Assignee: PURE STORAGE INCPriority: Oct 4, 2016Filed: Jun 3, 2020Published: Dec 17, 2020
Est. expiryOct 4, 2036(~10.2 yrs left)· nominal 20-yr term from priority
G06F 3/0619G06F 3/064G06F 16/2282G06F 3/0632G06F 9/4881G06F 3/0688G06F 3/0607G06F 12/0246G06F 21/572G06F 12/0253G06F 16/211G06F 16/252G06F 3/0689G06F 2209/482G06F 3/065G06F 2212/702G06F 2212/7205G06F 3/061G06F 3/0652G06F 3/0665G06F 9/4401G06F 3/0655
69
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A topology of a solid-state storage device of a storage system is received from a storage controller. A plurality of schedulable units of the solid-state storage device that are configured to perform parallel access operations are identified based on the topology. A determination as to which of the plurality of schedulable units are associated with other access operations that have been scheduled to be performed by the solid-state storage device is made. A write operation is scheduled to be performed by one or more of the plurality of schedulable units that are not associated with the other access operations that have been scheduled to be performed by the solid-state storage device. The write operation is performed to store data at the solid-state storage device based on the scheduling.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . (canceled) 
     
     
         2 . A storage system comprising:
 a plurality of solid-state storage devices; and   a storage system controller, operatively coupled to the plurality of solid-state storage devices, the storage system controller comprising a processing device, the processing device to:
 receive, from a storage controller, a topology of a solid-state storage device of the plurality of solid-state storage devices; 
 identify a plurality of schedulable units of the solid-state storage device that are configured to perform parallel access operations based on the topology; 
 determine which of the plurality of schedulable units are associated with other access operations that have been scheduled to be performed by the solid-state storage device; 
 schedule a write operation to be performed by one or more of the plurality of schedulable units that are not associated with the other access operations that have been scheduled to be performed by the solid-state storage device; and 
 perform the write operation to store data at the solid-state storage device based on the scheduling. 
   
     
     
         3 . The storage system of  claim 2 , wherein the other access operations correspond to write operations that have been scheduled to be performed by the plurality of schedulable units of the solid-state storage device. 
     
     
         4 . The storage system of  claim 2 , wherein to schedule the write operation the processing device is further to:
 assign the write operation to be performed by the one or more of the plurality of schedulable units that is available to perform the write operation, wherein the data of the write operation is stored at a data block of the one or more of the plurality of schedulable units.   
     
     
         5 . The storage system of  claim 2 , wherein the processing device is further to:
 receive a read operation for data stored at a particular schedulable unit of the plurality of schedulable units, wherein additional data is retrieved from a plurality of other schedulable units from a plurality of other solid-state storage devices upon determining that the particular schedulable unit storing the data is performing another access operation.   
     
     
         6 . The storage system of  claim 5 , wherein the processing device is further to:
 reconstruct the data stored at the particular schedulable unit based on the additional data from the plurality of other schedulable units from the plurality of other solid-state storage devices.   
     
     
         7 . The storage system of  claim 2 , wherein the processing device is further to:
 determine a priority associated with an entity associated with the write operation, wherein the scheduling of the write operation is based on the determined priority.   
     
     
         8 . The storage system of  claim 2 , wherein the other access operations comprise a garbage collection process. 
     
     
         9 . A method comprising:
 receiving, from a storage controller, a topology of a solid-state storage device of a storage system;   identifying a plurality of schedulable units of the solid-state storage device that are configured to perform parallel access operations based on the topology;   determining which of the plurality of schedulable units are associated with other access operations that have been scheduled to be performed by the solid-state storage device;   scheduling, by a processing device, a write operation to be performed by one or more of the plurality of schedulable units that are not associated with the other access operations that have been scheduled to be performed by the solid-state storage device; and   performing the write operation to store data at the solid-state storage device based on the scheduling.   
     
     
         10 . The method of  claim 9 , wherein the other access operations correspond to write operations that have been scheduled to be performed by the plurality of schedulable units of the solid-state storage device. 
     
     
         11 . The method of  claim 9 , wherein the scheduling of the write operation comprises:
 assigning the write operation to be performed by the one or more of the plurality of schedulable units that is available to perform the write operation, wherein the data of the write operation is stored at a data block of the one or more of the plurality of schedulable units.   
     
     
         12 . The method of  claim 9 , further comprising:
 receiving a read operation for data stored at a particular schedulable unit of the plurality of schedulable units, wherein additional data is retrieved from a plurality of other schedulable units from a plurality of other solid-state storage devices upon determining that the particular schedulable unit storing the data is performing another access operation.   
     
     
         13 . The method of  claim 12 , further comprising:
 reconstructing the data stored at the particular schedulable unit based on the additional data from the plurality of other schedulable units from the plurality of other solid-state storage devices.   
     
     
         14 . The method of  claim 9 , further comprising:
 determining a priority associated with an entity associated with the write operation, wherein the scheduling of the write operation is based on the determined priority.   
     
     
         15 . The method of  claim 9 , wherein the other access operations comprise a garbage collection process. 
     
     
         16 . A non-transitory computer readable storage medium storing instructions, which when executed, cause a processing device of a storage system controller to:
 receive, from a storage controller, a topology of a solid-state storage device of a storage system;   identify a plurality of schedulable units of the solid-state storage device that are configured to perform parallel access operations based on the topology;   determine which of the plurality of schedulable units are associated with other access operations that have been scheduled to be performed by the solid-state storage device;   schedule, by the processing device, a write operation to be performed by one or more of the plurality of schedulable units that are not associated with the other access operations that have been scheduled to be performed by the solid-state storage device; and   perform the write operation to store data at the solid-state storage device based on the scheduling.   
     
     
         17 . The non-transitory computer readable storage medium of  claim 16 , wherein the other access operations correspond to write operations that have been scheduled to be performed by the plurality of schedulable units of the solid-state storage device. 
     
     
         18 . The non-transitory computer readable storage medium of  claim 16 , wherein to schedule the write operation the processing device is further to:
 assign the write operation to be performed by the one or more of the plurality of schedulable units that is available to perform the write operation, wherein the data of the write operation is stored at a data block of the one or more of the plurality of schedulable units.   
     
     
         19 . The non-transitory computer readable storage medium of  claim 16 , wherein the processing device is further to:
 receive a read operation for data stored at a particular schedulable unit of the plurality of schedulable units, wherein additional data is retrieved from a plurality of other schedulable units from a plurality of other solid-state storage devices upon determining that the particular schedulable unit storing the data is performing another access operation.   
     
     
         20 . The non-transitory computer readable storage medium of  claim 19 , wherein the processing device is further to:
 reconstruct the data stored at the particular schedulable unit based on the additional data from the plurality of other schedulable units from the plurality of other solid-state storage devices.   
     
     
         21 . The non-transitory computer readable storage medium of  claim 16 , wherein the processing device is further to:
 determine a priority associated with an entity associated with the write operation, wherein the scheduling of the write operation is based on the determined priority.

Join the waitlist — get patent alerts

Track US2020394304A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.