IP Library Granted Patent US 11,782,604
Granted Patent B2
US 11,782,604 · App. 17/383,587 · Granted Oct 10, 2023

IO request flow performance analysis system and method

Inventors: Geng Han (Beijing, CN); Vladimir Shveidel (Pardes-Hana, IL); Jibing Dong (Beijing, CN)
Assignee: EMC IP Holding Company, LLC
G06F3/0613G06F3/0611G06F3/0653G06F3/0659G06F3/067
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,782,604
App. No.
17/383,587
Granted
Oct 10, 2023
Kind
B2
Abstract

A method, computer program product, and computing system for executing a plurality of IO traces on a storage system. At least one vertical flow and at least one horizontal flow associated with the at least one vertical flow may be defined for the plurality of IO traces. A hierarchical representation of the plurality of IO traces may be generated with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces.

Claims (34)

1 . A computer-implemented method, executed on a computing device, comprising:

executing a plurality of IO traces on a storage system;

defining, for the plurality of IO traces, at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow; and

generating a hierarchical representation of the plurality of IO traces with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces.

2 . The computer-implemented method of claim 1 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating a unique parent IO request identifier and a unique instance identifier with a parent IO request.

3 . The computer-implemented method of claim 2 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating the unique parent IO identifier with at least one child IO request.

4 . The computer-implemented method of claim 3 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating at least one unique instance identifier with each child IO request based upon, at least in part, the unique instance identifier associated with the parent IO request.

5 . The computer-implemented method of claim 1 , further comprising:

defining an execution latency for the at least one horizontal flow associated with the at least one vertical flow.

6 . The computer-implemented method of claim 5 , further comprising:

defining an execution latency for the at least one vertical flow based upon, at least in part, the execution latency defined for the at least one horizontal flow associated with the at least one vertical flow.

7 . The computer-implemented method of claim 1 , wherein generating the hierarchical representation of the plurality of IO traces with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces includes reformatting a list including the plurality of IO traces from a sequential execution representation to a hierarchical execution representation.

8 . A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

executing a plurality of IO traces on a storage system;

defining, for the plurality of IO traces, at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow; and

generating a hierarchical representation of the plurality of IO traces with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces.

9 . The computer program product of claim 8 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating a unique parent IO request identifier and a unique instance identifier with a parent IO request.

10 . The computer program product of claim 9 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating the unique parent IO identifier with at least one child IO request.

11 . The computer program product of claim 10 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating at least one unique instance identifier with each child IO request based upon, at least in part, the unique instance identifier associated with the parent IO request.

12 . The computer program product of claim 8 , wherein the operations further comprise:

defining an execution latency for the at least one horizontal flow associated with the at least one vertical flow.

13 . The computer program product of claim 12 , wherein the operations further comprise:

defining an execution latency for the at least one vertical flow based upon, at least in part, the execution latency defined for the at least one horizontal flow associated with the at least one vertical flow.

14 . The computer program product of claim 8 , wherein generating the hierarchical representation of the plurality of IO traces with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces includes reformatting a list including the plurality of IO traces from a sequential execution representation to a hierarchical execution representation.

15 . A computing system comprising:

a memory; and

a processor configured to execute a plurality of IO traces on a storage system, wherein the processor is further configured to define, for the plurality of IO traces, at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow, and wherein the processor is further configured to generate a hierarchical representation of the plurality of IO traces with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces.

16 . The computing system of claim 15 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating a unique parent IO request identifier and a unique instance identifier with a parent IO request.

17 . The computing system of claim 16 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating the unique parent IO identifier with at least one child IO request.

18 . The computing system of claim 17 , wherein defining the at least one vertical flow and at least one horizontal flow associated with the at least one vertical flow includes associating at least one unique instance identifier with each child IO request based upon, at least in part, the unique instance identifier associated with the parent IO request.

19 . The computing system of claim 15 , wherein the processor is further configured to:

defining an execution latency for the at least one horizontal flow associated with the at least one vertical flow.

20 . The computing system of claim 19 , wherein the processor is further configured to:

defining an execution latency for the at least one vertical flow based upon, at least in part, the execution latency defined for the at least one horizontal flow associated with the at least one vertical flow.

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 Jul 23, 2021
From: HAN, GENG; SHVEIDEL, VLADIMIR; DONG, JIBING
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 056956/0401 →
Continuity (1)
Related Publication 20230025962A1 · Jan 26, 2023
Cited By (1)
US 12,437,078