IP Library Granted Patent US 11,061,835
Granted Patent B1
US 11,061,835 · App. 16/788,461 · Granted Jul 13, 2021

Sensitivity matrix for system load indication and overload prevention

Inventors: Xiangping Chen (Sherborn, MA); Anton Kucherov (Dudley, MA); Svetlana Kronrod (Concord, MA)
Assignee: EMC IP Holding Company LLC
G06F13/1668G06F9/5077G06F13/18
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,061,835
App. No.
16/788,461
Granted
Jul 13, 2021
Kind
B1
Abstract

An aspect of performing input/output (IO) flow control in a storage system includes receiving an IO latency factor for each IO of a plurality of IOs in a workload. The IO latency factor specifies a priority level. An aspect also includes receiving a component latency factor, with respect to each of the IOs in the workload, for each component of a plurality of components in the storage system. The component latency factor indicates a degree to which the component is considered in assessing the workload. An aspect also includes applying, during processing of the workload, the IO latency factor and the component latency factor to each of the corresponding IOs; and determining an effective average latency of the plurality of IOs in the workload as a function of the applied IO latency factors and the applied component latency factors.

Claims (64)

1. A method for performing input/output (IO) flow control in a storage system, the method comprising:

receiving an IO latency factor for each IO of a plurality of IOs in a workload, the IO latency factor specifying a priority level;

receiving a component latency factor, with respect to each of the Ios in the workload, for each component of a plurality of components in the storage system, the component latency factor indicating a degree to which the component is considered in assessing the workload;

processing the plurality of IOs in the workload, comprising:

applying, during processing of the workload, the IO latency factor and the component latency factor to each of the IOs in the workload; and

determining an effective average latency of the plurality of IOs in the workload as a function of the applied IO latency factors and the applied component latency factors; and

modifying the IO flow control of incoming IOs in the storage system as a function of the effective average latency.

2. The method of claim 1 , wherein modifying the IO flow control of the incoming IOs includes increasing an amount of the incoming IOs when the effective average latency is less than a threshold value.

3. The method of claim 1 , wherein applying the IO latency factor and the component latency factor to each of the corresponding IOs includes:

for each component of the plurality of components that processes the IO as determined by the component latency factor:

determining an amount of processing time attributed to the IO;

multiplying the amount of processing time by the component latency factor, yielding a component latency value;

summing component latency values for each of the components; and

multiplying the sum of the component latency values by the IO latency value, yielding an effective IO latency value attributed to the IO, the effective IO latency value specifying a load indicator.

4. The method of claim 3 , further comprising calculating a current average latency of the IOs processed in the workload comprising calculating effective IO latency values for each of the IOs processed in the workload, taking an average of the effective IO latency values.

5. The method of claim 4 , wherein determining the effective average latency includes trending the current average latency calculated for the IOs processed in the workload and a previous average latency calculated for IOs processed in a previous workload.

6. The method of claim 1 , wherein the IO latency factor is a value between 0 and 1, and the component latency factor is a value between 0 and 1.

7. The method of claim 1 , wherein the component latency factor measures an amount of time the IO is processed through a corresponding one of the components, and wherein the components subject to the component latency factor include at least one of:

synchronous replication remote data transfer functions; and

address lock resolution functions.

8. A system for performing input/output (IO) flow control in a storage system, the system comprising:

a memory comprising computer-executable instructions; and

a processor operable by a storage system, the processor executing the computer-executable instructions, the computer-executable instructions when executed by the processor cause the processor to perform operations comprising:

receiving an IO latency factor for each IO of a plurality of IOs in a workload, the IO latency factor specifying a priority level;

receiving a component latency factor, with respect to each of the IOs in the workload, for each component of a plurality of components in the storage system, the component latency factor indicating a degree to which the component is considered in assessing the workload;

processing the plurality of IOs in the workload, comprising:

applying, during processing of the workload, the IO latency factor and the component latency factor to each of the IOs in the workload; and

determining an effective average latency of the plurality of IOs in the workload as a function of the applied IO latency factors and the applied component latency factors; and

modifying the IO flow control of incoming IOs in the storage system as a function of the effective average latency.

9. The system of claim 8 , wherein modifying the IO flow control of the incoming IOs includes increasing an amount of the incoming IOs when the effective average latency is less than a threshold value.

10. The system of claim 8 , wherein applying the IO latency factor and the component latency factor to each of the corresponding IOs includes:

for each component of the plurality of components that processes the IO as determined by the component latency factor:

determining an amount of processing time attributed to the IO;

multiplying the amount of processing time by the component latency factor, yielding a component latency value;

summing component latency values for each of the components; and

multiplying the sum of the component latency values by the IO latency value, yielding an effective IO latency value attributed to the IO, the effective IO latency value specifying a load indicator.

11. The system of claim 10 , wherein the operations further comprise calculating a current average latency of the IOs processed in the workload comprising calculating effective IO latency values for each of the IOs processed in the workload, taking an average of the effective IO latency values.

12. The system of claim 11 , wherein determining the effective average latency includes trending the current average latency calculated for the IOs processed in the workload and a previous average latency calculated for IOs processed in a previous workload.

13. The system of claim 8 , wherein the IO latency factor is a value between 0 and 1, and the component latency factor is a value between 0 and 1.

14. The system of claim 8 , wherein the component latency factor measures an amount of time the IO is processed through a corresponding one of the components, and wherein the components subject to the component latency factor include at least one of:

synchronous replication remote data transfer functions; and

address lock resolution functions.

15. A computer program product performing input/output (IO) flow control in a storage system, the computer program product embodied on a non-transitory computer readable medium, the computer program product including instructions that, when executed by a computer, causes the computer to perform operations comprising:

receiving an IO latency factor for each IO of a plurality of IOs in a workload, the IO latency factor specifying a priority level;

receiving a component latency factor, with respect to each of the IOs in the workload, for each component of a plurality of components in the storage system, the component latency factor indicating a degree to which the component is considered in assessing the workload;

processing the plurality of IOs in the workload, comprising:

applying, during processing of the workload, the IO latency factor and the component latency factor to each of the IOs in the workload; and

determining an effective average latency of the plurality of IOs in the workload as a function of the applied IO latency factors and the applied component latency factors; and

modifying the IO flow control of incoming IOs in the storage system as a function of the effective average latency.

16. The computer program product of claim 15 , wherein modifying the IO flow control of the incoming IOs includes increasing an amount of the incoming IOs when the effective average latency is less than a threshold value.

17. The computer program product of claim 16 , wherein applying the IO latency factor and the component latency factor to each of the corresponding IOs includes:

for each component of the plurality of components that processes the IO as determined by the component latency factor:

determining an amount of processing time attributed to the IO;

multiplying the amount of processing time by the component latency factor, yielding a component latency value;

summing component latency values for each of the components; and

multiplying the sum of the component latency values by the IO latency value, yielding an effective IO latency value attributed to the IO, the effective IO latency value specifying a load indicator.

18. The computer program product of claim 17 , wherein the operations further comprise calculating a current average latency of the IOs processed in the workload comprising calculating effective IO latency values for each of the IOs processed in the workload, taking an average of the effective IO latency values.

19. The computer program product of claim 18 , wherein determining the effective average latency includes trending the current average latency calculated for the IOs processed in the workload and a previous average latency calculated for IOs processed in a previous workload.

20. The computer program product of claim 15 , wherein:

the IO latency factor is a value between 0 and 1, and the component latency factor is a value between 0 and 1;

the component latency factor measures an amount of time the IO is processed through a corresponding one of the components; and

the components subject to the component latency factor include at least one of:

synchronous replication remote data transfer functions; and

address lock resolution functions.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 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 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 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 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 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 060436/0441 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2020
From: CHEN, XIANGPING; KUCHEROV, ANTON; KRONROD, SVETLANA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051842/0951 →