Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for scheduling the processing of I/O requests in a cache for a plurality of logical devices associated with the cache, the method comprising: identifying a target minimum number of write destages to be performed with respect to a first logical device in the plurality of logical devices within a unit of time; and enforcing the target minimum number of write destages to be performed with respect to the first logical device.
2. The method of claim 1 wherein enforcing the target minimum number of write destages to be performed with respect to the first logical device further comprises: identifying a first target time between processing a first write request in the cache associated with a first logical device in the plurality of logical devices and processing a second write request in the cache associated with the first logical device, wherein the first target time is the unit of time divided by the target minimum number of write destages to be performed with respect to the first logical device within the unit of time; tracking an elapsed time since processing the first write request, wherein processing the first write request comprises writing data to the first logical device; comparing the elapsed time to the first target time; and increasing a priority associated with the second write request when the elapsed time is equal to the first target time, wherein the increased priority causes the second write request to be processed promptly.
3. The method of claim 1 wherein enforcing the target minimum number of write destages to be performed with respect to the first logical device further comprises: tracking a number of write destages performed with respect to the first logical device within the unit of time; comparing the number of write destages performed within the unit of time to the target minimum number; and increasing a priority associated with a write destage to be performed with respect to the first logical device when the number of write destages performed within the unit of time is less than the target minimum per unit time.
4. The method of claim 3 further comprising periodically comparing the number of write destages performed within the unit of time to the target minimum number.
5. The method of claim 1 further comprising periodically identifying a target minimum number of write destages to be performed with respect to a first logical device in the plurality of logical devices within a unit of time.
6. The method of claim 1 wherein the unit of time is a second.
7. A method for scheduling the processing of I/O requests in a cache for a plurality of logical devices associated with the cache, the method comprising: identifying a first target time between processing a first write request in the cache associated with a first logical device in the plurality of logical devices and processing a second write request in the cache associated with the first logical device; tracking an elapsed time since processing the first write request, wherein processing the first write request comprises writing data to the first logical device; comparing the elapsed time to the first target time; and increasing a priority associated with the second write request when the elapsed time is equal to the first target time, wherein the increased priority causes the second write request to be processed promptly.
8. The method of claim 7 wherein the second write request is not processed when the elapsed time is less than the first target time.
9. The method of claim 7 wherein the first target time is identified periodically.
10. The method of claim 9 further comprising saving data related to the comparison of the elapsed time to the first target time.
11. The method of claim 10 wherein identifying a first target time is based on at least one parameter chosen from the list consisting of a change in the write pending count for the cache associated with the first logical device over a time interval, the data related to the comparison of the elapsed time to the target time, and an average queue length of writes pending for a plurality of logical devices including the first logical device wherein the plurality of logical devices comprise a single physical memory device.
12. The method of claim 11 wherein the cache is divided into a plurality of partitions and identifying a first target time is based on at least one parameter chosen from the list consisting of a write pending count for one of the plurality of partitions of the cache associated with the first logical device, a write pending count for the first logical device, a maximum write pending count for one of the plurality of partitions of the cache associated with the first logical device, and a maximum write pending count for the first logical device.
13. The method of claim 7 wherein identifying a first target time is based on at least one parameter chosen from the list consisting of a write pending count for the cache associated with the first logical device, a write pending count for the first logical device, a maximum write pending count for the cache associated with the first logical device, and a maximum write pending count for the first logical device.
14. The method of claim 13 further comprising saving data related to the comparison of the elapsed time to the target time, and wherein identifying a first target time is based on at least one parameter chosen from the list consisting of a change in the write pending count for the cache associated with the first logical device over a time interval, the data related to the comparison of the elapsed time to the target time, and an average queue length of writes pending for a plurality of logical devices including the first logical device wherein the plurality of logical devices comprise a single physical memory device.
15. The method of claim 7 wherein the cache is divided into a plurality of partitions, and further comprising identifying a second target time for one of the plurality of partitions associated with the first logical device; comparing the first target time with the second target time; and when the first target time is equal to the second target time, setting the first target time equal to the second target time.
16. A method for scheduling the processing of I/O requests in a cache for a plurality of logical devices associated with the cache, the method comprising: identifying a target minimum number of write destages to be performed with respect to a first logical device in the plurality of logical devices within a unit time; tracking a number of write destages performed with respect to the first logical device within the unit of time; comparing the number of write destages performed within the unit of time to the target minimum number; and increasing a priority associated with a write destage to be performed with respect to the first logical device when the number of write destages performed within the unit of time is less than the target minimum per unit time.
17. The method of claim 16 further comprising saving data related to the comparison of the number of write destages performed within the unit of time to the target minimum number to be performed within the unit time.
18. The method of claim 17 wherein the target minimum number of write destages is identified with a function that includes at least one parameter chosen from the list consisting of a change in the write pending count for the cache associated with the first logical device over a time interval, the data related to the comparison of the elapsed time to the target time, and an average queue length of writes pending for a plurality of logical devices including the first logical device wherein the plurality of logical devices comprise a single physical memory device.
19. The method of claim 16 wherein the target minimum number of write destages is identified with a function that includes at least one parameter chosen from the list consisting of a write pending count for the cache associated with the first logical device, a write pending count for the first logical device, a maximum write pending count for the cache associated with the first logical device, and a maximum write pending count for the first logical device.
20. The method of claim 16 wherein the priority associated with a write destage to be performed with respect to the first logical device is not increased if the number of write destages performed within the unit of time is greater than the target minimum number per the unit of time.
Unknown
August 18, 2009
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.