IP Library Granted Patent US 12,105,613
Granted Patent B2
US 12,105,613 · App. 17/234,017 · Granted Oct 1, 2024

Performance scale testing with I/O reuse

Inventors: Douglas E. LeCrone (Hopkinton, MA); Jeffrey L Jones (Fort Lauderdale, FL)
Assignee: EMC IP Holding Company LLC
G06F11/3466G06F3/0613G06F3/0659G06F3/0673G06F11/3034G06F11/3041
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 12,105,613
App. No.
17/234,017
Granted
Oct 1, 2024
Kind
B2
Abstract

A host performs benchmark I/O operations for a storage system by an application on the host formulating a performance test command, providing the performance test command to a channel subsystem layer of the host that actuates communication hardware that provides signals to the storage system, and performing a plurality of benchmark I/O operations at the channel subsystem layer in response to a single performance test command by actuating the communication hardware that provides signals to the storage system. The single performance test command may result in actuating the communication hardware to read and write data at a plurality of addresses of the storage system. The channel subsystem layer may perform the plurality of benchmark I/O operations without receiving any additional data or commands from any applications on the host. A dispatch program that runs on the channel subsystem layer may receive operational data and may actuate the communication hardware.

Claims (32)

1. A method for a host to perform benchmark IO operations and conventional IO operations for a storage system, comprising:

an application on the host formulating IO data corresponding to one of: a performance test command or a conventional IO operation;

providing the IO data to a channel subsystem layer of the host that actuates communication hardware that provides signals to the storage system;

the channel subsystem determining if the IO data corresponds to a performance test command or to a conventional IO operation;

the channel subsystem actuating the communication hardware to transfer at least some of the IO data from the host for storage on the storage system in response to the IO data corresponding to a conventional IO operation; and

the channel subsystem performing a plurality of benchmark IO operations at the channel subsystem layer by repeatedly actuating the communication hardware to make multiple transfers of data from the host to the storage system in response to the IO data corresponding to a single performance test command sent by the application to the channel subsystem layer.

2. The method, according to claim 1 , wherein the single performance test command results in actuating the communication hardware to read and write data at a plurality of addresses of the storage system.

3. The method, according to claim 1 , wherein the channel subsystem layer performs the plurality of benchmark IO operations without receiving any additional data or commands from any applications on the host.

4. The method, according to claim 1 , wherein a dispatch program that runs on the channel subsystem layer actuates the communication hardware that provides signals to the storage system.

5. The method, according to claim 4 , wherein the dispatch program waits for additional data or commands provided by the application prior to actuating the communication hardware.

6. The method, according to claim 5 , wherein the additional data or commands includes parameters used in connection with the plurality of benchmark IO operations.

7. The method, according to claim 4 , wherein functionality for the dispatch program is provided by a self-modifying channel program at the channel subsystem layer.

8. The method, according to claim 1 , wherein the host simulates operation of the channel subsystem layer.

9. A non-transitory computer readable medium containing software for a host to perform benchmark IO operations and conventional IO operations for a storage system, the software comprising:

executable code that formulates IO data corresponding to one of: a performance test command or a conventional IO operation;

executable code that provides the IO data to a channel subsystem layer of the host that actuates communication hardware that provides signals to the storage system;

executable code at the channel subsystem that determines if the IO data corresponds to a performance test command or to a conventional IO operation;

executable code at the channel subsystem that actuates the communication hardware to transfer at least some of the IO data from the host for storage on the storage system in response to the IO data corresponding to a conventional IO operation; and

executable code at the channel subsystem that performs a plurality of benchmark IO operations at the channel subsystem layer by repeatedly actuating the communication hardware to make multiple transfers of data from the host to the storage system in response to the IO data corresponding to a single performance test command sent by the application to the channel subsystem layer.

10. The non-transitory computer readable medium, according to claim 9 , wherein the single performance test command results in actuating the communication hardware to read and write data at a plurality of addresses of the storage system.

11. The non-transitory computer readable medium, according to claim 9 , wherein the channel subsystem layer performs the plurality of benchmark IO operations without receiving any additional data or commands from any applications on the host.

12. The non-transitory computer readable medium, according to claim 9 , wherein a dispatch program that runs on the channel subsystem layer actuates the communication hardware that provides signals to the storage system.

13. The non-transitory computer readable medium, according to claim 12 , wherein the dispatch program waits for additional data or commands provided by the application prior to actuating the communication hardware.

14. The non-transitory computer readable medium, according to claim 13 , wherein the additional data or commands includes parameters used in connection with the plurality of benchmark IO operations.

15. The non-transitory computer readable medium, according to claim 12 , wherein functionality for the dispatch program is provided by a self-modifying channel program at the channel subsystem layer.

16. The non-transitory computer readable medium, according to claim 9 , wherein the host simulates operation of the channel subsystem layer.

17. A system that performs benchmark IO operations and conventional IO operations, comprising:

a storage system; and

a host coupled to the storage system having a processor and a non-transitory computer readable medium coupled to the processor containing software that, when executed, performs benchmark IO operations and conventional IO operations in response to an application on the host formulating IO data corresponding to one of: a performance test command or a conventional IO operation by providing the IO data to a channel subsystem layer of the host that actuates communication hardware that provides signals to the storage system, the channel subsystem determining if the IO data corresponds to a performance test command or to a conventional IO operation, the channel subsystem actuating the communication hardware to transfer at least some of the IO data from the host for storage on the storage system in response to the IO data corresponding to a conventional IO operation, and the channel subsystem performing a plurality of benchmark IO operations at the channel subsystem layer by repeatedly actuating the communication hardware to make multiple transfers of data from the host to the storage system in response to the IO data corresponding to a single performance test command sent by the application to the channel subsystem layer.

18. The system, according to claim 17 , wherein the channel subsystem layer performs the plurality of benchmark IO operations without receiving any additional data or commands from any applications on the host.

19. The system, according to claim 17 , wherein a dispatch program that runs on the channel subsystem layer actuates the communication hardware that provides signals to the storage system.

20. The method, according to claim 19 , wherein the dispatch program waits for additional data or commands provided by the application prior to actuating the communication hardware.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) 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/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) 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/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) 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 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 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 056295/0124 →
SECURITY INTEREST Recorded May 19, 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 056295/0001 →
SECURITY INTEREST Recorded May 19, 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 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2021
From: LECRONE, DOUGLAS E.; JONES, JEFFREY L.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056052/0298 →