IP Library › Granted Patent US 10,067,888
Granted Patent B1
US 10,067,888 · App. 14/871,179 · Granted Sep 4, 2018

I/O optimization with track splitting

Inventors: Douglas E. LeCrone (Hopkinton, MA); Paul A. Linstead (Shrewsbury, MA)
Assignee: EMC IP Holding Company LLC
G06F13/10G06F11/3041G06F11/3409
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 10,067,888
App. No.
14/871,179
Filed
Sep 30, 2015
Granted
Sep 4, 2018
Kind
B1
Art Unit
2181
USPC
710/18
Abstract

Providing I/O operations to a storage device includes selecting a portion of original I/O operations based on a first set of criteria, determining whether to subdivide each of the portion of original I/O operations that are selected according to a second set of criteria different than the first set of criteria, and converting each of the original I/O operations selected for subdivision into a plurality of subdivided I/O operations for different portions of data for a corresponding one of the original I/O operations, where at least two of the different portions are from a single track of data on the storage device. The first set of criteria may include whether the I/O operations are for multiple tracks of data and whether the storage device supports subdividing a single track. The second set of criteria may include determining a measured amount of performance improvement for previous subdivision operations.

Claims (26)

1. A method of providing I/O operations to a storage device, comprising:

selecting at least a subset of original I/O operations based on a first set of criteria;

for each original I/O operation of the at least subset that are selected, determining whether to subdivide the original I/O operation according to a second set of criteria different than the first set of criteria; and

for each original I/O operation of the at least subset for which it is determined to subdivide, converting the original I/O operation into a plurality of subdivided I/O operations for different portions of data corresponding to the original I/O operations, wherein at least two of the different portions are from a single track of data on the storage device.

2. A method, according to claim 1 , wherein the first set of criteria includes whether the I/O operations are for multiple tracks of data and whether the storage device supports subdividing a single track.

3. A method, according to claim 1 , wherein the second set of criteria includes determining a measured amount of performance improvement for previous subdivision operations.

4. A method, according to claim 3 , wherein performance of subdivided I/O operations is monitored.

5. A method, according to claim 1 , wherein a number of subdivided I/O operations is limited by a number of available parallel I/O routes.

6. A method, according to claim 1 , wherein I/O operations are subdivided following an exit by I/O driver routines.

7. A method, according to claim 6 , wherein results of the subdivided I/O operations are reassembled to provide a result to the I/O driver routines.

8. A method, according to claim 1 , wherein an original I/O operation is subdivided according to different tracks, each corresponding subdivided I/O operation being for a particular one of the tracks.

9. A method, according to claim 1 , wherein a subdivided I/O operation is prevented from being further subdivided.

10. A method, according to claim 1 , further comprising:

using a planning tool to predict an effect of subdividing I/O operations.

11. A non-transitory computer-readable medium containing software that provides I/O operations to a storage device, the software comprising:

executable code that selects at least a subset of original I/O operations based on a first set of criteria;

executable code that, for each original I/O operation of the at least subset that are selected, determines whether to subdivide the original I/O operation according to a second set of criteria different than the first set of criteria; and

executable code that, for each original I/O operation of the at least subset for which it is determined to subdivide, converts the original I/O operation into a plurality of subdivided I/O operations for different portions of data a corresponding to the original I/O operations, wherein at least two of the different portions are from a single track of data on the storage device.

12. A non-transitory computer-readable medium, according to claim 11 , wherein the first set of criteria includes whether the I/O operations are for multiple tracks of data and whether the storage device supports subdividing a single track.

13. A non-transitory computer-readable medium, according to claim 11 , wherein the second set of criteria includes determining a measured amount of performance improvement for previous subdivision operations.

14. A non-transitory computer-readable medium, according to claim 13 , wherein performance of subdivided I/O operations is monitored.

15. A non-transitory computer-readable medium, according to claim 11 , wherein a number of subdivided I/O operations is limited by a number of available parallel I/O routes.

16. A non-transitory computer-readable medium, according to claim 11 , wherein I/O operations are subdivided following an exit by I/O driver routines.

17. A non-transitory computer-readable medium, according to claim 16 , wherein results of the subdivided I/O operations are reassembled to provide a result to the I/O driver routines.

18. A non-transitory computer-readable medium, according to claim 11 , wherein an original I/O operation is subdivided according to different tracks, each corresponding subdivided I/O operation being for a particular one of the tracks.

19. A non-transitory computer-readable medium, according to claim 11 , wherein a subdivided I/O operation is prevented from being further subdivided.

Assignments (10)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2015
From: LECRONE, DOUGLAS E.; LINSTEAD, PAUL
To: EMC CORPORATION
Reel/Frame 036696/0139 →