IP Library Granted Patent US 11,550,511
Granted Patent B2
US 11,550,511 · App. 17/326,452 · Granted Jan 10, 2023

Write pressure throttling based on service level objectives

Inventors: Sanjib Mallick (Bangalore, IN); Vinay G. Rao (Bangalore, IN); Arieh Don (Newton, MA)
Assignee: EMC IP Holding Company LLC
G06F3/0659G06F3/061G06F3/0673
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,550,511
App. No.
17/326,452
Granted
Jan 10, 2023
Kind
B2
Abstract

An apparatus comprises at least one processing device. The at least one processing device is configured to detect a write pressure condition by identifying at least a first set of one or more logical storage devices having a first service level objective for which at least one performance metric has a value that exceeds a specified threshold, and responsive to the detected write pressure condition, to identify at least a second set of one or more logical storage devices, having a second service level objective that is lower than the first service level objective, and that are contributing to the detected write pressure condition. The at least one processing device is further configured, for each of the identified logical storage devices of the second set, to provide a write pressure indication to control throttling of write operations directed to that logical storage device of the second set.

Claims (54)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

where the at least one processing device is configured:

to detect a write pressure condition by identifying at least a first set of one or more logical storage devices having a first service level objective for which at least one performance metric has a value that exceeds a specified threshold;

responsive to the detected write pressure condition, to identify at least a second set of one or more logical storage devices, having a second service level objective that is lower than the first service level objective, and that are contributing to the detected write pressure condition; and

for each of the identified logical storage devices of the second set, to provide a write pressure indication to control throttling of write operations directed to that logical storage device of the second set.

2. The apparatus of claim 1 wherein the at least one processing device is implemented in a storage system that includes the first and second sets of logical storage devices.

3. The apparatus of claim 2 wherein the first service level objective comprises a highest one of a plurality of service level objectives supported by the storage system.

4. The apparatus of claim 2 wherein the second service level objective comprises a lowest one of a plurality of service level objectives supported by the storage system.

5. The apparatus of claim 1 wherein the performance metric comprises a response time metric for input-output operations directed to the first set of one or more logical storage devices.

6. The apparatus of claim 1 wherein identifying at least a second set of one or more logical storage devices comprises:

monitoring at least one of a write count, a write pending count and a bandwidth consumption for each of a plurality of logical storage devices having the second service level objective; and

responsive to detection of an above-threshold amount of increase in at least one of the write count, the write pending count and the bandwidth consumption for a given one of the logical storage device having the second service level objective, including the given logical storage device in the second set.

7. The apparatus of claim 1 wherein, for each of the identified logical storage devices of the second set, providing a write pressure indication to control throttling of write operations directed to that logical storage device of the second set comprises:

receiving from a host device a write operation directed to the logical storage device of the second set; and

issuing a check condition notification for the received write operation to the host device.

8. The apparatus of claim 7 wherein issuing the check condition notification comprises issuing the check condition notification in conjunction with rejecting the received write operation.

9. The apparatus of claim 8 wherein multiple write operations are received for the logical storage device of the second set, and rejecting the received write operation comprises selecting a particular one of the multiple write operations to reject based at least in part on an amount of data associated with that write operation.

10. The apparatus of claim 7 wherein the check condition notification causes the host device to at least temporarily reduce a rate at which write operations are directed to the logical storage device of the second set.

11. The apparatus of claim 10 wherein at least temporarily reducing a rate at which the write operations are directed to the logical storage device of the second set comprises:

reducing the rate for a throttle-down period;

in conjunction with completion of the throttle-down period, determining if an additional check condition notification is received responsive to an additional write operation directed to the logical storage device of the second set; and

continuing to reduce the rate responsive to receipt of the additional check condition notification.

12. The apparatus of claim 1 wherein the at least one processing device is further configured:

to receive, in response to a check condition notification issued for a given logical storage device of the second set, a command requesting additional write pressure information for that logical storage device; and

to provide, in response to the received command, an indication of a particular level of write pressure currently being experienced.

13. The apparatus of claim 1 wherein the at least one processing device is further configured:

to determine that the detected write pressure condition continues to persist subsequent to providing, for each of the identified logical storage devices of the second set, the write pressure indication to control throttling of write operations directed to that logical storage device of the second set; and

responsive to the determining, to identify at least a third set of one or more logical storage devices having a third service level objective that is lower than the first service level objective but higher than the second service level objective and that are contributing to the detected write pressure condition; and

for each of the identified logical storage devices of the third set, to provide a write pressure indication to control throttling of write operations directed to that logical storage device of the third set.

14. The apparatus of claim 1 wherein the at least one processing device is further configured:

to track a write pending diminish rate over multiple received write operations; and

to delay providing the write pressure indication responsive to a given write operation by an amount of time that is determined based at least in part on a current value of the write pending diminish rate.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code, when executed by at least one processing device comprising a processor coupled to a memory, causes the processing device:

to detect a write pressure condition by identifying at least a first set of one or more logical storage devices having a first service level objective for which at least one performance metric has a value that exceeds a specified threshold;

responsive to the detected write pressure condition, to identify at least a second set of one or more logical storage devices, having a second service level objective that is lower than the first service level objective, and that are contributing to the detected write pressure condition; and

for each of the identified logical storage devices of the second set, to provide a write pressure indication to control throttling of write operations directed to that logical storage device of the second set.

16. The computer program product of claim 15 wherein identifying at least a second set of one or more logical storage devices comprises:

monitoring at least one of a write count, a write pending count and a bandwidth consumption for each of a plurality of logical storage devices having the second service level objective; and

responsive to detection of an above-threshold amount of increase in at least one of the write count, the write pending count and the bandwidth consumption for a given one of the logical storage device having the second service level objective, including the given logical storage device in the second set.

17. The computer program product of claim 15 wherein, for each of the identified logical storage devices of the second set, providing a write pressure indication to control throttling of write operations directed to that logical storage device of the second set comprises:

receiving from a host device a write operation directed to the logical storage device of the second set; and

issuing a check condition notification for the received write operation to the host device.

18. A method comprising:

to detect a write pressure condition by identifying at least a first set of one or more logical storage devices having a first service level objective for which at least one performance metric has a value that exceeds a specified threshold;

responsive to the detected write pressure condition, to identify at least a second set of one or more logical storage devices, having a second service level objective that is lower than the first service level objective, and that are contributing to the detected write pressure condition; and

for each of the identified logical storage devices of the second set, to provide a write pressure indication to control throttling of write operations directed to that logical storage device of the second set;

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

19. The method of claim 18 wherein identifying at least a second set of one or more logical storage devices comprises:

monitoring at least one of a write count, a write pending count and a bandwidth consumption for each of a plurality of logical storage devices having the second service level objective; and

responsive to detection of an above-threshold amount of increase in at least one of the write count, the write pending count and the bandwidth consumption for a given one of the logical storage device having the second service level objective, including the given logical storage device in the second set.

20. The method of claim 18 wherein, for each of the identified logical storage devices of the second set, providing a write pressure indication to control throttling of write operations directed to that logical storage device of the second set comprises:

receiving from a host device a write operation directed to the logical storage device of the second set; and

issuing a check condition notification for the received write operation to the host device.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2021
From: MALLICK, SANJIB; RAO, VINAY G.; DON, ARIEH
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056310/0525 →
Continuity (1)
Related Publication 20220374167A1 · Nov 24, 2022
Cited By (9)
US 12,306,751 US 12,353,714 US 12,393,533 US 12,430,029 US 12,443,350 US 12,524,171 US 12,566,576 US 12,602,160 US 12,619,374